to post messages and comments.

@OCTAGRAM:

Геометрией мира де Ситтера, оказывается, давно занимается Ромакина Людмила Николаевна, или, в той терминологии, геометрией гиперболических плоскостей и пространств положительной кривизны. В том числе и вопросом замощения (в той терминологии разбиения). Вообще, я ожидал в её книжках увидеть картинку, способную дополнить это, ведь группа симметрий одинаковая, но нашёл там совсем другое. Возможно, геометрия пространства-времени де Ситтера не допускает продолжений чего-то, более сложного, чем прямая (времениподобная в той части, где это пространство-время де Ситтера).

@OCTAGRAM:

Новости с позиции КОБ
Вот уже полтора года веду плейлист, за это время порядка 400 видео и 14 049 просмотров. После углубления в прошлое (относительно дня создания 14 декабря 2015) стало 947. Это удобно, если нужно вернуться в какую-то дату. Управленчески безграмотные СМИ не могут ведь столь хорошо передать дух момента, да и фильтровать их долго. У обычных СМИ не вполне адекватные представления о том, что важно. Но и одним фильтром (как если смотреть загруженные на одном канале) обходиться плохо, вдруг что-то упущено. Вот когда в одном плейлисте соседствуют Пякин, Шаталов, Манираки, Каменев и Таран, это повышает шансы не упустить искомое. Плюс, в оригинале порядок оставляет желать лучшего. Таран нет-нет, да и забьёт раз в три месяца залить ролик на свои каналы, а на Crimea BigNews оно появляется, но быстро тонет в потоке других видео. Все выпуски, какие смог, нашёл, всё отсортировал по дате съёмки.

С сожалением можно отметить, что поддержка плейлистов — так себе, если сравнивать со стратегией перезалива видео. Если перезаливать, то качество теряется, ведь не все умеют пользоваться youtube-dl так же хорошо, как я. И даже если уметь, если поставить ffmpeg и качать в формате 136+22 (это когда сначала качается 1080p DASH mp4 видео, потом 720p mp4 видео+аудио, но 720p видео отбрасывается; это нужно, чтобы совместить максимально качественное видео 1080p с максимально качественным 192k аудио, которое бывает только в нагрузку с 720p видео), даже так наверняка качество будет немного потеряно. Также разбрасываются по перезаливам комментарии, отметки «Нравится» и просмотры. Со всех сторон плохо.

@OCTAGRAM:

Если с момента постановления о штрафе ещё не прошло 20 дней, вы платите только 50% от суммы.

@OCTAGRAM:

Было некогда желание сделать виджет для магнитных ссылок, чтоб из менюшки можно было сделать поиск по TTH через онлайн-индексаторы, проверку в VirtusTotal, а также варианты поделится в соцсетях. В менюшке можно отображать альтернативные HTTP/HTTPS ссылки, рекомендуемые DC++ хабы и прочее, прочее, что в магнитную ссылку теоретически можно запихнуть, но чем практически сложно воспользоваться из-за слабой поддержки в клиентах.

Но так и не сделал, с нуля наклепать такое не просто. Я на altaimolodoi.ru как-то раз поставил подсветку ключевых слов, по которым пришли из поиска, так оно вешало Хром, а я этого не знал, так как в IceDragon работало. А тут попался похожий сервис виджетов для Скайпа, где, похоже, всё отлажено. Можно переделать код под свои нужды.

@OCTAGRAM:

Самая проблемная (как сейчас представляется) часть совмещения библиотек для разных OS — это исключения и сигналы, которые конвертируются в исключения разных языков программирования. Виндоуз в этом плане очень продумана, по крайней мере, 32-разрядная и более поздние. Там общая для всех языков программирования система структурной обработки исключений (SEH), поэтому самое сложное, что там нужно делать — это брандмауэр исключений. Например, в ActiveX объектах такое есть. Исключение ловится, конвертируется в информацию IErrorInfo, передаётся в COM, а функция возвращает неуспешный HRESULT. Потом, по другую сторону можно обратно сконструировать исключение другого языка программирования.

Но нас интересуют операционные системы вроде Линукса и БиЭсДи, и там всё гораздо сложнее из-за того, что функционал структурной обработки исключений отдан на откуп компиляторам, а ядро вызывает сигналы. А компиляторы — кто в лес, кто по дрова. Они заточены под то, что вся программа написана на одном языке программирования, и код инициализации ставит обработчики сигналов для всей программы, и только так оно работает, а возможность комбинировать разные языки программирования не учтена.

@OCTAGRAM:

Силуанов анонсировал решение по объединению ФНБ и Резервного фонда

Резервный фонд — это репарации за поражение в 1991м году. Если оттуда ничего нельзя достать, то это всё равно, что рекетир ходит в кафешку постоянно есть как бы в долг. Из ФНБ что-то выцарапать на пользу своей стране получалось, к большому неудовольствию рекетира, который уже считал эти деньги своими и синхронно эмитировал наличность под них. Если из ФНБ достаются деньги, то это как дважды потратить их. Рекетиру нужно думать, как приземлить спекулятивные деньги, чтоб не получить у себя инфляцию. В принципе, если бы не коллаборационистский Центральный банк России, канализирующий инфляцию оттуда к нам, нам было бы наплевать на их инфляцию.

И на каких же принципах объединяются такие разные фонды?

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

@OCTAGRAM:

Решил на всякий случай от всяких WannaCry обновить Windows 2003. Если и есть что-то архаичное в XP/2003, то это оно. BITS, не способный ничего скачать без пенделей, поиск обновлений пять суток с загрузкой одного ядра на 100%, ошибки, которые можно починить только Fix-it, который нельзя скачать с сайта Майкрософт даже через Машину времени, настолько хорошо свёрстан их сайт, благо, я в своё время собрал обширную коллекцию припарок.

Если бы в Windows 10 сделали обязательным ТАКИЕ обновления, оно просто у большинства перманентно было бы в сломанном состоянии, и не давало повода перезагрузить. То немногое, что стало работать ощутимо лучше.

@OCTAGRAM:

Ютуб выпилил учётку 1984buran, на которой публиковались, например, Новости Славян Евгения Новикова. Моё Избранное всё в дырках от удалённых учёток, и вот ещё одна.

@OCTAGRAM:

15-10 лет назад…

Доминирует IE, с ним конкурирует… например, Maxthon, тоже на движке Trident.

В языке JavaScript трассирующая сборка мусора соседствует с полнейшим отсутствием поддержки слабых ссылок. Когда-нибудь эта пороховая бочка должна была бахнуть, и она бахнула. Разразился скандал про несобираемые цепочки из JavaScript и DOM элементов, во всяких jQuery появились разные костыли, заменяющие слабые ссылки. По результатам скандала в браузерах могли бы наконец появиться нормальные слабые ссылки, но не появились, зато производители бросили жирную кость поклонникам трассирующей сборки мусора, реализовав сборку циклов в FireFox и Internet Explorer. С тех пор о быстрых браузерах остались только воспоминания.

Будущий лидер веба известен в узких кругах красноглазиков. Браузер называется Konquerror, а движок — KHTML, и у его разработчиков даже и в мыслях нет, что они вытеснят вообще всех, кто на слуху: IE, Оперу, FireFox.

@OCTAGRAM:

Нашёл @WeChatApp в Mac App Store. Вот Виндоуз-версия изначально была нерабочая, а версия для Мак, оказывается, как любой нормальный нехипстерский Скайп, когда-то пускала по логину-паролю. А потом перестала. И пошли отзывы:

Не логинится по паролю ★★★★☆
от Irriius

> В версии 1.2.0.18 не логинется по паролю.
> Сканировать QR код каждый раз крайне не удобно!!! Разработчики верните логин!!!
> И сделайте наконец сохранение истории, хотябы опционально.

Верификация по QR коду ★★☆☆☆
от Имантяй

> Теперь и в приложение добавили верификацию по QR коду, это очень не удобно у кого нет смартфона, каждый раз просить кого-то помочь залогиниться сводит с ума.
> Верните обратно окно логина и пароля.

Бесполезная ерунда ★☆☆☆☆
от naunet

> Каждый раз нужно сканировать код чтобы зайти в приложение. В приложении нет истории сообщений, файлов. Единственный плюс, это то, что можно использовать клавиатуру компьютера, чтобы попечатать сообщения. Отвратительно, впрочем как и версия для андроида.

Из 40 отзывов набралось 11 колов, не считая моего.

@OCTAGRAM:

На накосе смог открыть, наконец, образы Copland, которые не кололись 7zip’ом. SOM DTK там внутри не обнаружил, а это, например, IDL для SOMObject. Но системные IDL там были в изобилии. Однако, что показалось мне странным, многие из них не содержат описание классов. Там только структуры и обратные вызовы.

Но были и те, что с классами, например, всё, что начинается на HI. Это была интересная наводка. Я вспомнил, что в накосе для более лёгкого портирования была (и сейчас есть, но только для 32х бит) система библиотек Carbon. Теперь, когда в экосистеме классической макос мне известно что-то объектное, кроме OpenDoc, стало логичным посмотреть, а куда это делось в Carbon. В статье на Википедии про Carbon прочитал такое:

HIObject — a completely new object-oriented API which brings to Carbon an OO model for building GUIs. This is available in Mac OS X v10.2 or later, and gives Carbon programmers some of the tools that Cocoa developers have long been familiar with. Starting with Mac OS X v10.2, HIObject is the base class for all GUI elements in Carbon. HIView is supported by Interface Builder, part of Apple's developer tools. Traditionally GUI architectures of this sort have been left to third-party application frameworks to provide. Starting with Mac OS X v10.4, HIObjects are NSObjects and inherit the ability to be serialized into data streams for transport or saving to disk.
Но какой может быть «completely new» в системе библиотек, которые нужны только для портирования? Это осколок былого величия, наскоро сделанная замена SOM. Вместо somBuildClassHIObjectRegisterSubclass, вместо somDataResolveHIObjectDynamicCast и т.п. Кстати, доступ к полям через HIObjectDynamicCast значит, что это нехрупкое ABI. Также, через QuickTime SDK, HIObject попал и на Виндоуз тоже, в собственно плеер, Сафари и айТюнс.

@OCTAGRAM:

OS/2 2.0 Technical Library: System Object Model Guide and Reference
Бывает забавно производить впечатление на разработчиков Objective-C (которые делают libobjc2 для GNUStep, например) тем, что в SOM нехрупкое ABI появилось в 1992м. Они проверяют, и да, так и есть. То, что они, как им кажется, повторяют за Эппл, гораздо старше, чем они думали. Да и в Эппл, с учётом SOM, получается, что нехрупкое ABI появилось не в 2000х, а на десять лет раньше. В 2000х было просто возвращение к некогда занятым позициям, утраченным с приходом Джобса и переходом на менее совершенный в те годы Objective-C.

Но 1992ой — это появление SOM 2.0, который сильно отличался. Там вместо старого SOM OIDL был принят CORBA IDL с дополнениями, было реализовано множественное наследование (к сожалению, по типу C++, а не Dylan/CLOS), и механизм скрещивания метаклассов по требованию. И большая часть материалов по SOM, что удалось найти, была из 1994-1996 годов. Чем был, а чем не был SOM 1.0, соответственно, оставалось неизвестным, и на всякий случай на 1991й год я не замахивался.

Теперь с обнаружением этого документа можно утверждать, что нехрупкий ABI был в SOM с самого начала, с 1991го года. На странице 13 (1-2) прямо указано, что можно добавлять и методы, и поля, и даже удалять непубличные. А на других страницах можно видеть описание старого синтаксиса OIDL, который был только в SOM 1.0.

@OCTAGRAM:

Пара программ, котороые мне очень нравились, в Эпп Стор не присутствуют: Disk Inventory X и Colloquy, потому что их забросили, хотя если последний Colloquy требует 10.7, то Эпп Стор к тому времени уже точно был (10.6.6), так что странно. Это ж такая мегаштука! Как глоток свежего воздуха после Thunderbird вернуться на шустрый и одновременно приятный некрасному глазу Colloquy.

@OCTAGRAM:

Обнаружил в 10.11 El Capitan /etc/pf.conf , pf.anchors и прочее, а ведь в 10.4 Tiger был ipfw. Здорово, давно не виделись.

На каникулах в 2006м году попросила меня одна фирмёшка, которую, со слов начальника, задолбали хакеры, сделать им сервер и шлюз понадёжнее. Поставил им NetBSD, pf, djbdns, qmail в chroot и ftp-proxy (ALG для активного режима FTP, а то у них очень важные скрипты не работали с внешним сервером). Заработал 3000руб., первые деньги в своей жизни.

@OCTAGRAM:

Мучаюсь с уже трёмя мёртвыми почтовыми ящиками. С живым-то хорошо, в крайнем случае создал учётку на новом компе, и через несколько часов он уже всё слил и проиндексировал. А вот как сделать, чтобы почта, которая есть в установленном клиенте на другом компе, со всеми папками попала из одного клиента в другой — это очень весёлая история. В Apple Mail при первом запуске апгрейд почтового ящика завершался сегфолтом, пока я не переименовал ~/Library/Mail в ~/Library/Mail.old и не начал заново. Если теперь попытаться импортировать из другой папки, импортёр очень долго думает, а потом показывает список с галочками из десятков тысяч файлов. Так как там и живые ящики, и мёртвые, надо будет переместить директории так, чтоб для импорта остались только мёртвые. Но всё ещё не понятно, куда эти письма пойдут, будет ли структура как была раньше.

Есть идейка поставить уже наконец Citadel и влить туда на IMAP архив всех старых ящиков, а оттуда разлить по компам.

@OCTAGRAM:

Ubuntu для мобильных устройств: посмертный анализ
В какой-то момент мне пришлось пересобирать и обновлять моё приложение glmark2 в каталоге, потому что вышел OTA с обновлёнными клиентскими библиотеками Mir, хотя ОС заявляла тот же уровень совместимости, что и раньше. Затем стало ясно, что схема версионирования просто гарантирует, что официальный метод написания приложения гарантированно работает, но официальный метод — это просто QML и HTML5. Программа glmark2 взаимодействовала напрямую с Mir, как и многие другие (например, игры с использованием SDL). Приложения в каталоге могли просто прекратить работать, если не проверять и обновлять их после каждого OTA. Вы по-прежнему можете запускать старые Android-приложения на современном Android-смартфоне, но вот приложение Click с прошлого года может прекратить работу после следующего OTA, если вы не отслеживаете его постоянно. Я помню яркую дискуссию в IRC в конце 2015 года, во время которой несколько разработчиков Canonical были озадачены этим фактом и спрашивали у сотрудников группы SDK, как, по их мнению, разработчикам приложений работать в таких условиях.
Такое чувство, что то, что гремело в 1990х и чем я долго интересуюсь, теперь стало какой-то эзотерикой. Папуасы откуда-то нашли магнитофон, уже не могут сделать ни такой же, ни лучше, зато могут сломать последнее, что есть. Из рук всё валится.

Так что многие из нас создавали простенькие веб-приложения
Вот-вот.

@OCTAGRAM:

Попробовал собрать приложение для теста (TextEdit) и обнаружил, что оно на Mac OS X 10.11 El Capitan даже не запускается, собрано под 10.12 Sierra. Ну ладно, подумал я, и попытался переключить SDK и цель на 10.11. А нету SDK для 10.11! Xcode может работать на 10.11, но собрать может только для 10.12.

Весь Xcode прежней версии качать неохота было, качнул только утилиты командной строки. Поставил. Поставились. Теперь компилятор для 10.11 есть. А SDK нету. Так уж и быть, качнул Xcode 7.3.1. Поставил. Теперь есть и компилятор, и SDK для 10.11. Но только для них (не считая забекапленной 10.12, конечно). Странно, а вроде раньше по-другому было. В те дни, когда я думал, что 10.6.8 — потолок, я поставил Xcode 3, и там были 10.4u, 10.5, 10.6, то есть, начиная от самой первой x86’ой до самой последней поддерживаемой. А тут одна.

Вычитал такое:
I can copy MacOSX10.11.sdk from another host, but presumably Apple has something else in mind here.
Just to be clear, Apple policy since Xcode 7 has been to only distribute the newest SDK with Xcode.app.

Так, теперь понятно, как Эппл пасёт чебурашек. Ставим разработчиков в дурацкое положение, когда они не могут просто взять и собрать для минимальной достаточной версии OS, как это делается на Windows, со слабым связыванием опциональных фич. Если не предпринимать специальных действий, если не писать на Delphi, C++ Builder или GNAT Ada, а именно из Xcode, то получаются приложения с неоправданно завышенными системными требованиями. Пользователи вынужденно обновляют ОС и/или железо, Эппл собирает кассу, разработчикам с этого пирога ничего не перепадает.

Однако нашёл ещё такое и такое. То есть, несмотря на ужимки Эппл, возможность собирать как лучше для людей имеется.

И это отличный источник входных файлов для BridgeSupport и анализатора, которым я также собираюсь прочесать GNUStep (до и после отравления TGC) и Cocotron на предмет пересечения. Где что появилось, где устарело, где изчезло. Пока что это мутная толща воды, и в неё надо забуриться.

@OCTAGRAM:

Сайты, которые нужно знать китайскому поклоннику открытых исходников:
opencas.org
oss.org.cn

code.csdn.net
coding.net
git.oschina.net

Но при этом какой-нибудь tangram.baidu.com вполне может вести на банальный GitHub.

Думал, куда бы свалить с пидорского BitBucket. На международных CodePlex, BitBucket, Google Code, Assembla, SourceForge какой ни возьми, варианты SCM разные, и Mercurial тоже был. На трёх указанных китайских — нет. Беда. Глянул в китайскую вики, там тоже не видать своих сервисов.

@OCTAGRAM:

Как же не люблю, когда всё пропадает из Интернета. Ну было же великое событие, появление BridgeSupport, до которого описание было только в заголовочных файлах Objective-C и не было аналога COM TLB, SOM.IR и т.п. Для Qt что-то такое уже было, для Gtk+ было, и только Cocoa была последней крепостью. И эта крепость пала. Всё это было в Mac OS X 10.5 Leopard, а у меня был Mac OS X 10.4 Tiger, но я следил за этими событиями, в частности, ставил MacPorts, и через него всё замечательно ставилось и на Тигре тоже. Недальновидные разработчики не могли придумать ничего лучше моста в Python и Ruby. Чуть более дальновидные на его основе сделали взамен устаревшего встроенного моста Cocoa-Java новый RoCocoa. И совсем то, что доктор прописал, было в первую очередь поступить с этой метаинформацией как в COM TLB, то есть, конечно же, привязки для Delphi и Ada, а уж потом всякие скрипты-шкрипты.

@OCTAGRAM:

Забавно, что за демонстрацию фотографий Сталина лепят административку, а за фотографию Власова — нет. Какие герои, такая жизнь.