Loess.ru

having fun

Революция в фотографии (постепенная)

Давненько был пост о фотоаппарате с шестнадцатью камерами light.co:

сейчас практически все камеры смартфонов используют подобные технологии, но только с одной или парой — модифицированных — камер. Основная работа выполняется процессором, а не объективом.
Отлично, «на пальцах» рассказана эволюция камер с той поры: https://vas3k.ru/blog/computational_photography/ (pdf)
осторожно! очень долго и очень залипательно!
Read More

Alternate data stream (ads)

В современных файловых системах существует такая особенность, как запись метаданных к любому файлу. При этом не изменяется его содержимое. Называется в разных фс по-разному, в NTFS — Alternate data stream, или ещё один уровень — extended attributes, в Linux-based ФС — xattr, но по сути — это одно и то же.
Например, самое безобидное применение — перед запуском скачанного из интернета бинарника винда показывает предупреждение:

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

Routing src vs sNAT vs masquerading

1. src field of linux routing table
https://serverfault.com/questions/451601/ip-route-show-src-field

Note that the src you are giving would only affect the traffic originating at your very host. If a foreign packet is being routed, it obviously would already have a source IP address so it would be passed on unaltered (unless you are using NAT of course, but this is an entirely different matter). Also, this setting might be overridden by a process specifically choosing to bind to a specific address instead of using the defaults when initiating connections (rather rare).

2 и 3.
http://sysadminz.ru/index.php?topic=3872.0

Принципиально SNAT ничем не отличается от MASQUERADE, разница лишь в том что SNAT может транслировать адрес источника в любой заданный адрес, а MASQUERADE — только в адрес физического интерфейса, непосредственно установленного на данном компьютере. MASQUERADE рекомендуется использовать только с интерфейсами, имеющими динамические IP адреса (например, при dialup соединении).

—————
Ещё чтива по теме: https://www.tecmint.com/setup-linux-as-router/ http://xgu.ru/wiki/Маршрутизация_в_Linux

Технология «промывания мозгов». китай

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

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

Но ох уж эти «безобидные» уступки… Письменное заявление могло уже само по себе изменить поведение человека в нужную сторону.

https://telegra.ph/Kitajskij-opyt-kontrolya-soznaniya-11-27
https://graph.org/Kitajskij-opyt-kontrolya-soznaniya-11-27
https://tgraph.io/Kitajskij-opyt-kontrolya-soznaniya-11-27
pdf

Ожирение софта

Спустя ещё два года после «ожирения сайтов» https://loess.ru/ожирение-сайтов/ и ряда катастроф (например, npm и leftpad, M.E.Doc и NotPetya и т.п.), ещё кто-то всё понял:
«Windows 10 takes 30 minutes to update. What could it possibly be doing for that long? That much time is enough to fully format my SSD drive, download a fresh build and install it like 5 times in a row.»
http://tonsky.me/blog/disenchantment/
https://habr.com/post/423889/ (pdf)
деффективный менеджмент и кинопоиск

А вывод прост и очевиден: «не строить софт на базе огромной кучи дерьма, которую поставляют современные инструменты.» А чтобы это делать, надо хорошо учиться и много знать =)