RSS
# 9front на rpi4 как терапия
std.hugeping
hugeping(ping,1) — All
2021-03-01 14:16:23


Специально для 9front (форк Plan9) я заказал себе вторую "малинку". На данный момент система работает и я ей пользуюсь. Но путь был непростым, поэтому я решил составить памятку по основным, скажем так, нюансам.

## Plan9, 9Front и golang

На самом деле, кроме 9front на rpi4 можно поставить "ванильный" Plan9 с патчами от Дэвида Миллера. Скачать образ можно здесь: https://9p.io/wiki/plan9/download/ Забегая вперёд скажу, что ванильный Plan9 есть только для архитектуры arm32, в то время как 9front образ -- это arm64. Забавно, что даже rPI OS до сих пор поставляется в виде 32-битных сборок. И вроде бы хорошо, что 9front такой крутой. Но только на данный момент golang не поддерживает цель plan9/arm64, поэтому установка Plan9 для rpi4 от Миллера -- единственный путь получить golang. Ещё одно отличие -- драйвер wifi, который есть только в сборке Миллера.

Я думал уже поставить "чистый" Plan-9 но... Но потом понял, что если у Plan-9 и есть будущее, то оно за 9front. Так что ставил именно его.

## Заполняем всю карту

Проблемы начинаются с того, что записанный образ на карту имеет фиксированный размер. Поэтому вся карточка будет недоступна. Я пошёл следующим путём:

* Поставил в qemu 9front;
* Собрал в нём версию для arm64 (описано в разделе J руководства. С поправкой "arm32->arm64");
* Заменил скрипт inst/mountcwfs чтобы ставиться без worm http://docs.a-b.xyz/cwfs.html ;
* Ещё я поменял в скрипте inst/copydist строчку с disk/mkfs, заменив allproto на distproto;
* Включил export файловой системы;
* Записал образ на sd карту малинки. Во время загрузки выбрал загрузку не с карты, а по сети с 9front на qemu;
* Провёл процедуру инсталляции.

В итоге, у меня получилось занять всю sd карточку и без WORM раздела!

## Видео

Сначала я явно задал режим для своего монитора, отредактировав config.txt:

9fs pidos
acme /n/pidos/config.txt

Далее, заглянув в исходники ядра, я убедился что включается 16 битный режим. Я задал 24-битный (отредактировав config.txt и cmdline.txt). На мой взгляд, он работал быстрее! Однако каналы R и B были перепутаны. Тогда я просто поменял это в исходном коде и пересобрал ядро. Заработало!

## Шрифты

В этот раз я решил заморочится с шрифтами. Потому что дефолтный вид браузеров на русскоязычных ресурсах был категорически страшен. Оказалось, что для Plan9 есть утилита: ttf2subf, которая может перегонять ttf шрифт в битмап формат Plan9.

Взять её можно из extra 9front:

9fs 9front;
ls /n/extra | grep ttf2subf

Я скачал шрифты Go и перегнал размеры: 13,14,16,18,20 для каждого из начертаний (выбирал режим antialias). С помощью fontsel (тоже есть в extra) посмотрел на шрифты. Мне понравилось. До кучи прогнал ещё для любимой Iosevka. Попатчил: netfront, acme, mothra на шрифты Go и... результатом был очень доволен! Вот такой веб мне по душе!

## Почта

При настройке почты по мануалу 9front снова натолкнулся на грабли о которых забываю уже второй раз. В мануале не написано, что /mail/lib/rewrite нужно заменить файлом /mail/lib/rewrite.gateway. Без этого инструкции бесполезны. При отправке письма вы будете получать 'Invalid address.'. Не благодарите. Тем более, что вы вряд-ли будете заниматься тем же, что сделал я. :) Кроме того попатчил upas, чтобы не требовал проверки подлинности сертификатов. Да, это плохо. Но google меняет их постоянно, а в 9front нет нормальной проверки цепочки сертификатов.

## Русская раскладка

Тут я воспользовался своими патчами с https://github.com/gl00my/plan9hacks -- caps переключает раскладку.

## ruspell

Собрал lua из ports. Только там нужно собрать не только lua библиотеки, но и сам интерпретатор. Для этого там есть специальный mk файл. После этого заработал мой ruspell на lua.

## А что же с go?

Без go тяжело. Я пытался дописать plan9/arm64 цель. Даже написал реализацию системных вызовов. Но на этапе линковки под цель -- падает линкер. Пока я не разобрался в чём тут дело и отложил задачу. Но у меня есть вторая малинка, на которой крутится Linux. И на которой, кстати, сейчас находитесь вы (если читаете эту статью с https://hugeping.tk или gemini://hugeping.tk ). Так что я решил проблему своих утилит для чистого веба просто запуском их по ssh.

## Да, а как с gemini?

Собрал castor9. Но он неправильно работает с UTF-8. Делает узкими русскоязычные ресурсы. Запатчил. Ну и текстовый gemnine тоже есть.

## Зачем весь этот кошмар?

А вот тут начинается самое интересное. Моя тяга к минимализму постепенно прогрессирует и всё это время я пытался найти ей объяснение. Да, как оказалось, в этом я совсем не одинок. Например, Drew DeVault -- автор sway, основатель sourcehut. Недавно сообщил о том, что открывает хостинг в gemini: gemini://drewdevault.com/2021/02/20/Free-gemini-hosting.gm

А Алан Кокс уже довольно давно сделал Fuzix OS -- UNIX-систему для древних процессоров. Знаете какой у неё слоган? "Fuzix: Because Small Is Beautiful".

И таких примеров немало. Что происходит?

Похоже, у этой странной формы луддизма явно не технические, а человеческие причины. Вопрос ставится уже не в форме "а может ли ваша X делать Y?" Нет, выглядит это как "руки прочь от меня! Я не продукт. Здесь нет ничего, что тебя заинтересует!" Это уже напоминает панк-движение или что-то в этом духе.

Когда я собрал себе "машинку" на rpi4, поставил 9front, подключил дешёвый монитор и механическую клавиатуру на синих свитчах в голову неожиданно пришла ассоциация. Да это же просто печатная машинка! Да. Я испытываю умиротворение работая с простой системой. Это, в каком-то смысле, информационная аскетика -- выбросить мусор из головы, ограничить себя. Ограничить потоки информации, поступающие через органы чувств. Разгрузить мозг. На rpi4 в 9front не работает даже звук! Сначала у меня была мысль написать драйвер. Потом я подумал. Нет звука? Что же, это прекрасно! Поработаю в тишине.

Как то раз я отправил письмо из gmail (через веб почту) в рассылку 9front. Через пару минут пришёл ответ от робота. Извини, мы не принимаем письма в html. "Пошёл вон, Вавилон!" (c)

Я давно занимаюсь IT-технологиями. И я зависим от информации, как и многие из нас. Телефон всегда со мной ("моя прелесть!"). Чаты. Новости. Меня сделали зависимым от информации. Не без моего согласия, конечно. Но я всё ещё помню аналоговый мир и мне хочется верить, что изменения во мне обратимы. Надо выбираться из этих сетей! Пытаться. Начинать с малого. Например, не смотреть в свой телефон на прогулке... Не смотреть в свой телефон на прогулке! НЕ СМОТРЕТЬ В СВОЙ ТЕЛЕФОН! НЕ СМОТРИ В СВОЙ ЧЁРТОВ ТЕЛЕФОН!!!

До встречи! :)

# Re: Бороздим интернет без браузера #2
std.hugeping
hugeping(ping,1) — hugeping
2021-02-18 08:06:45


Не буду пилить самостоятельный пост. Просто напишу, что именно я доделал за последние дни.

# reddit

Оказалось, что reddit предоставляет доступ к постам и комментариям через atom feed. Просто добавляем к url .rss и получаем данные без мусора. Мимо такого я пройти не мог, поэтому:

- добавлена утилита atom2rss;
- утилита rss2gmi теперь умеет читать данные из stdin.

Правда, довольно быстро выяснилось, что меня начали рубить за большое количество запросов (хотя их было немного). Смена User-Agent помогла:

# читаем реддит plan9
curl -s -H "User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.89 Safari/537.36" https://www.reddit.com/r/plan9/.rss | atom2rss | rss2gmi -h -r

# Доработки rss2gmi

Улучшил внешний вывод в тех случаях, когда контент представляет из себя html код. Теперь текст выдачи выглядит более аккуратно! Кроме того, добавил параметр -n -- задать число записей, которые хотим показать. Всё это позволило удобным образом делать сводки новостей сразу с нескольких ресурсов, например:

rss2gmi -n 1 https://www.opennet.ru/opennews/opennews_all_noadv.rss
rss2gmi -n 1 -h https://www.linux.org.ru/section-rss.jsp?section=1
rss2gmi -n 1 http://hugeping.tk/echo/all/rss
rss2gmi -h -n 1  https://hype.retroscene.org/rss/index/
rss2gmi -h -n 1 'https://forum.ifiction.ru/extern.php?action=active&type=RSS'

# Выводы

Просто удивительно, что когда я некоторое время назад искал простые консольные rss-читалки, я находил только безумные комбайны. Или библиотеки, с множеством слоёв абстракций. Но на go писать такие вещи настолько просто, что буквально за пару вечеров можно сделать инструмент под себя и пользоваться им с комфортом.

# Мысли о Луне
std.hugeping
hugeping(ping,1) — All
2021-02-15 16:21:40


Я собирался написать заметку о процессе создания своей последней игры "Луна-9" после завершения конкурса ЗОК. Но вдруг заметил, что очень быстро стал забывать те интересные нюансы о которых собирался написать. Поэтому не стал тянуть и вот -- вы читаете эту статью. В этот раз я решил написать всё максимально честно. В том числе, затронув религиозные мотивы. Если вы атеист и вам неприятна эта тема -- не стоит читать эту заметку.

> Внимание! Если вы не играли в "Луну-9" я не рекомендую читать статью. Если вы не собираетесь играть, статья вам ничего не даст. А если собираетесь -- возвращайтесь после прохождения!

Игра доступна по адресу https://instead.itch.io/moon9 Дальше будут раскрыты нюансы сюжета, которые могут сильно испортить впечатление об игре.

# Мечты о Луне

Я не помню точно как именно я вышел на лунную тему. Ассоциативный ряд здесь может быть длинным. Название скриптового языка "Lua" (который используется в INSTEAD) переводится с португальского как "луна". Луна связана с ночью, тайной, снами, другой реальностью. Луна одновременно близкая и далёкая. Последний раз человек был на Луне в 1972 году. Прошло уже почти 50 лет -- время целого поколения. Почему так вышло? Неужели человек и здесь продал (и предал) свою мечту? В общем, я смотрел видеосъёмки лунной поверхности с телескопов, записи посадки Апполонов. Читал книги по лунной программе. Смотрел на Луну. Думал о ней. И начал записывать идеи в текстовый файлик, который редактировал в acme в ОС 9Front (форк Plan9).

Когда я читал книги по лунной программе, меня поразило одно из воспоминаний последнего астронавта на Луне. Что испытывает человек попавший в другой мир? Мир, который не видел ни один человек до тебя. А потом вернулся домой, чтобы остаться там навсегда. Как ты будешь существовать, пережив такой опыт? Зная, что самое значительное событие в твоей жизни навсегда осталось в прошлом.

Это наблюдение можно воспринимать в разных смыслах, в том числе и в духовном. Представляя в своём воображении унылый чужой пейзаж изрытый кратерами, видя в чёрном небе голубую Землю, я на яву чувствовал тоску, страх и трепет перед тайной.

# Сюжет

Но сюжет не клеился. С самого начала мне казалось, что игра будет о сне, как о подлинной реальности. Сне как подпространстве, в котором нет ограничения на перемещения с бесконечной скоростью. Некая раса могла бы изучить и населить эту реальность, в которую мы лишь на время попадаем во время сна. Я думал, что главный герой обнаружит одного из космонавтов прошлой вахты в странном состоянии коматоза. Затем, этот космонавт станет "проводником" главного героя в дворец лунной принцессы. (Да, образ лунной принцессы был создан до объявления ЗОК, в котором "девушка в короне" была одним из возможных "зацепок").

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

Мир снов и реальность связаны между собой. Для починки излучателя нужны действия как во сне, так и в нашем мире. Главный герой соглашается помочь и начинает действовать сразу в двух мирах. Собирая излучатель во сне, он выполняет реальные действия как "лунатик" и в нашем мире. Он довершает то, что не закончила прошлая вахта -- постепенно разбирает станцию на запчасти...

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

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

# ЗОК

Объявили ЗОК. Я не люблю писать игры на конкурсы и обычно не делаю этого. Но меня поразило совпадение: среди тем-якорей была "девушка в короне" и мне показалось это забавным. Вообще, начиная с этого момента игру начали сопровождать интересные совпадения. Например, совершенно случайно я назвал игру "Луна-9". Почему? Я изучал материалы по проекту лунной базы "Луна семь". https://spacelin.ru/luna-sem/prezentatsiya/ Учитывая время событий, я решил называть вахты по номерам: 7, 8, 9. По моим расчётам, экспедиция должна была стать 9-й вахтой. Поэтому "Луна-9". Но в этот период времени я увлёкся ОС Plan9! И в названии игры тоже была девятка! Потом, когда опубликовали игры конкурса, Луна-9 оказалась под номером... 9! После этого я просто решил расслабиться и ни чему не удивляться.

Короче, я решил участвовать. Игру я сразу видел в формате "парсера" что, конечно, неудачный выбор для конкурса. Но в виде игры на ссылках я не мог её представить. Только вот сюжет был не готов. Тот самый бредовый сюжет. Тогда я рискнул и просто начал писать...

Начинал писать игру я на eee PC под управлением ОС Plan9, в консольной версии instead-метапарсера. Но потом перешёл на Linux-ноутбук помощнее. Правда, код игры всё-равно писался в acme из plan9ports. И это был интересный и полезный опыт, потому что я и сейчас пишу текст этой статьи в acme.

Как вы уже знаете, игра начинается с конфликта с Ларисой. В тот момент я не знал, зачем она вообще здесь нужна. Просто, я вспомнил о разводах астронавтов со своими жёнами. Почувствовал что-то, не знаю. Так или иначе, но закодировав конфликт с Ларисой я не представлял себе, что будет дальше. Вернее, дальше было пока всё просто. Полёт. Чисто техническая рутина, которую я планировал сделать короткой.

# Полёт

Для полёта я попытался применить известные факты о реальных аварийных ситуациях в космосе, но в сильно упрощённой (игровой) форме. В технической части много ляпов. Я не буду их сейчас озвучивать. Но, оглядываясь назад, могу сказать, что степень реалистичности достаточна для того, чтобы убедить основную массу игроков-читателей.

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

На полёт я потратил гораздо больше времени, чем планировал. Всё шло естественным путём и я не хотел прерывать этот процесс. Но всё это время меня мучал сюжет. Его не было!

# Метаморфозы сюжета

Больше всего мне не давал покоя эпизод с ссорой. К чему он? Как пришло озарение я не помню. Но я вдруг осознал, что если это игра про сны, то герой должен встретиться не только с принцессой, но и с женой. Ситуация с сюжетом напомнила мне ещё одну игру -- "Проводник". "Проводник" начинался просто с ситуации и для меня самого раскрылся только к середине игры. Как это произошло -- я не знаю.

После этого, фрагменты начали складываться. Во-первых, я отказался от сложностей. Отрезал всё лишнее. Я понял, что газ (облако, которое мешало посадке) и есть причина странных явлений с сознанием. (Газ появился раньше, чем я понял зачем он нужен). Во-вторых, я понял, что лунная принцесса должна бить по слабым местам главного героя. Что она -- лишь инструмент действия злых сил, которые, кстати, называют себя в игре "легион". Это из Евангелия.

> Мк.5:8-9: Ибо Иисус сказал ему: выйди, дух нечистый, из сего человека. И спросил его: как тебе имя? И он сказал в ответ: легион имя мне, потому что нас много.

Чтобы показать тот факт, что герой сам создал принцессу и впустил её в своё сердце, появился постер.

Встреча с женой была реальна и важна "им". Это не галюцинация и не просто сон главного героя. Конечно, интерпретация остаётся на усмотрение игрока. Но изменения которые произошли в герое -- реальны не зависимо от интерпреации: мистической или реалистической.

По замыслу именно жена спасла героя. Помогла ему увидеть себя, увидеть "их" в своём сердце и сделать их существование невозможным. После этого, пройдя через метанойю, Лариса и Борис оказываются как бы в "раю". Этот "рай" их общий опыт. Он останется с ними навсегда и поможет им преодолеть кризис отношений. Цветочная поляна -- мой любимый момент в игре. Там описаны многие декорации, которые, вероятно пропускаются игроками. Но для меня эта сцена стала очень личной. Один из символов -- белый голубь. Аллюзия на Святого Духа. Чтобы подчеркнуть реальность сцены на поляне, она сопровождается единственной цветной картинкой из всей игры.

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

Очень помогли тестеры. Например, пропавшему болтику нашлось применение благодаря Олегу Бошу, а акцент в концовке был изменён благодаря Александру Никитину.

# Концовка

Было три варианта концовки. В первом варианте (он есть в истории git) после финального пробуждения героя, Александр отвечает на большинство вопросов прямым текстом. Концовка позитивна и не даёт большой свободы интерпретации. Меня эта концовка не удовлетворила.

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

Третий вариант отличается от второго тем, что из диалога Ларисы и Бориса мы узнаём, что они оба видели одинаковый сон. Именно этот вариант присутствует в релизе.

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

# Музыка

Во всех моих играх есть музыка. Но в этой игре я не смог её представить. И, следовательно, подобрать. Я не знаю почему. Сейчас мне кажется, что так лучше. Есть только один финальный трек.

# Тишина

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

# Руководство

Зато в этот раз я сделал к игре настоящее руководство в pdf. С хорошей вёрстко и иллюстрациями. Правда, его всё-равно никто не читает. :)

# Интерпретации

Я выпытывал у тестеров их интерпретации сюжета и получал совершенно разные варианты. Это напомнило мне ситуацию с игрой "Вахта", когда я получал гораздо более интересные интерпретации чем те, которые я вкладывал в игру при написании. Мне кажется, это хорошо. Возможно, получилось сделать нечто лучшее, чем то, что я придумал.

# Выводы

Их нет. Я просто сделал то, что сделал. Надеюсь, "Луна-9" найдёт свою аудиторию. А мне остаётся -- лишь ждать и надеятся, что игра написана не зря.
P.S. Edited: 2021-02-15 17:12:34

# Re: Бороздим интернет без браузера #2
std.hugeping
vvs(ping,12) — johnbrown
2021-02-14 22:59:39


johnbrown> Вообще, рсс много где есть: на гитхабе, хабре, яндексе.

И хочется в рай, да грехи не пускают... Если бы они еще и работали, цены бы им не было. А вот попробуйте найти RSS URL для PR и issues на гитхабе. Ан нету :(

Да, всегда можно использовать сторонние клиенты, API или сервисы, но они имеют привычку ломаться. Впрочем, как и поддержка RSS на самих серверах: сегодня есть, завтра глючит, послезавтра сдохла :(

Но голь на выдумки хитра, конечно :)

# Re: Бороздим интернет без браузера #2
std.hugeping
johnbrown(ping,9) — hugeping
2021-02-14 18:13:39


feed43.com создает рсс любой страницы, иногда даже лучше, чем родной. Серверный аналог (не проверял) https://github.com/shafihuzaib/hfeeds

Вообще, рсс много где есть: на гитхабе, хабре, яндексе.

# Бороздим интернет без браузера #2
std.hugeping
hugeping(ping,1) — All
2021-02-14 17:30:21


В прошлый раз я погорячился, когда сказал, что раздача контента по RSS -- редкость. Конечно, не редкость. Если посмотреть на исходный код главных страниц многих веб-ресурсов, то очень часто можно найти заветную ссылку с типом application/rss+xml. Я начал с простой утилиты на go, которая бы забирала rss ленту и выводила её в формате gemini разметки. Утилита rss2gmi лежит там же, где и остальные утилиты: https://github.com/gl00my/clearweb/tree/master/rss2gmi

Я испытал её на некоторых ресурсах и понял, что придётся усложнять. Например, некоторые сайты отдают ленту в которой в полях description находится html-разметка. Кроме того, вместо UTF-8 могут использоваться другие кодировки.

После небольших доработок я успешно испытал rss2gmi на:

* linux.org.ru - https://www.linux.org.ru/section-rss.jsp?section=1
* opennt.ru - https://www.opennet.ru/opennews/opennews_all_noadv.rss
* hype.retroscene.org - https://hype.retroscene.org/rss/index/
* форуме ifiction.ru - https://forum.ifiction.ru/extern.php?action=active&type=RSS
* interfax.ru - https://www.interfax.ru/rss.asp
* hugeping.tk - http://hugeping.tk/echo/all/rss


Но была ещё одна проблема. В acme окно всегда прокручивается в конец вывода. Поэтому, после запуска скрипта показывающего ленту, нужно было отматывать текст назад. А это -- неудобно! Решение, конечно, лежало на поверхности. Добавить опцию -r для реверсного показа ленты. После добавления этой опции, просмотр лент стал именно таким, каким я его хотел видеть. Например, для просмотра новостей opennet я просто запускаю скрипт opennet из acme и вижу что-то вроде:

## Выпуск Wine 6.2, Wine staging 6.2 и Proton 5.13-6 [38]

Состоялся экспериментальный выпуск открытой реализации WinAPI - Wine 6.2. С момента выпуска версии 6.1 был закрыт 51 отчёт об ошибках и внесено 329 изменений.

=> https://www.opennet.ru/opennews/art.shtml?num=54570 [38]

Если новость меня интересует, я нажимаю на ссылке и открывается браузер. Удобно! И в большинстве случаев -- никакого браузера! И никакой читалки RSS на qt или gtk. А в Plan9 это вообще единственный возможный способ для меня.

Сегодня многие пользуются для почты веб интерфейсом gmail/mail.ru и другими. Но это, конечно, не наш путь. Несколько последних лет я использую gnus в emacs. Забор почты может осуществляться mpop/imapsync. При этом письма просто помещаются в каталог в формате Maildir. Отправка -- msmtp. Для поиска нужных сообщений я использую mu. Mu позволяет делать выборку нужных сообщений и показывать их прямо из Maildir. И конечно, с помощью mu можно автоматизировать показ нужных писем прямо в acme!

Например, мне нужно следить за рабочим багтрекером. Я нажимаю на "кнопку" bugs в acme и получаю список последних ошибок! В теле писем есть ссылки. Я могу нажать на нужную и перейти к нужному багу. Скрип выглядит просто:

mu find from:Mantis --fields "l" -s "d" | tail -n $num | while read f; do mu view --nocolor "$f";done

Твиттер и mastadon я читаю скриптами, которые вызывают bti и toot -- консольные клиенты твиттера и мастадона.

Поиск, новости, чтение почты и твиттера... И всё это не выходя из acme. Жизнь налаживается! Acme -- действительно мощный интерфейс, легко настраиваемый под собственные задачи. И он очень помогает в борьбе с shit-вебом.

# Re: Сергей Павлов
std.hugeping
boscholeg(ping,5) — hugeping
2021-02-14 07:53:00


Я как-то наблюдал такое явление в горах. На красной Поляне. Не скажу что очень уж завораживающее зрелище.
P.S. Edited: 2021-02-14 07:53:08
Это я про Лунную радугу

# Re: Залечь на дно
std.hugeping
vvs(ping,12) — hugeping
2021-02-13 23:36:46


У меня в жизни тоже бывали периоды безразличия и депрессии. Что называется "выгорание".

Я вот заметил, что на мою мотивацию угнетающе действует однообразие. Поэтому, по мере возможности, стараюсь переключаться на разные занятия - так жизнь кажется полнее. Но тут встречается одна проблема: чтобы результат не получился слишком поверхностным и неудовлетворительным, требуется гораздо более широкое образование. Вот я и пытаюсь временами расширять свой кругозор, развлекаясь - заниматься самообразованием. Похоже главное при этом - не плыть беспорядочно по течению, а стараться как-то выстраивать все свои интересы последовательно. Так глядишь - они будут взаимно дополнять друг друга. А иногда достаточно и просто расслабиться, почитать интересную книгу ("Лунная радуга" подойдет) или даже найти необычную игру :) Мне вот когда-то понравилась логическая головоломка incredible.pm, но это на любителя.

# Re: Залечь на дно
std.hugeping
hugeping(ping,1) — vvs
2021-02-13 21:36:09


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

Согласен, похожие мысли. Но качели всё-равно присутствуют. Видимо, уже особенности личные накладываются. Надо просто переждать и учится быть спокойней. :)

# Re: Залечь на дно
std.hugeping
vvs(ping,12) — hugeping
2021-02-13 21:12:52


Ну, эти вопросы многим знакомы :) Вот прямо только что я обсуждал похожую тему о смысле существования и о признании. Мой ответ такой: нам при жизни не дано правильно оценить свои усилия, поэтому надо следовать своей интуиции. Если ты считаешь, что это нужно *тебе*, а ты не дурак, то найдутся люди, которые, возможно, это оценят. Все равно, в процессе творчества ты сам чему-то учишься - это главное. А самое рациональное - это не забыть вовремя поесть. Но чему новому при этом можно научиться? Мозгу нужна непрерывная работа. Творчество - это процесс познания мира и самого себя. По-моему, важнее этого ничего быть не может. А понимают ли это абсолютно все люди, так ли это важно? Тут не следует смешивать сам смысл существования и понимание его другими людьми. Лично мне моя жизнь представляется вполне осмысленной, но это не означает, что я пребываю в постоянном самодовольстве. Но иногда можно почувствовать себя счастливым.

# Сергей Павлов
std.hugeping
hugeping(ping,1) — hugeping
2021-02-13 19:39:05


Чтобы не забыть: Прочитать "Лунная Радуга"

# Залечь на дно
std.hugeping
hugeping(ping,1) — All
2021-02-13 19:13:09


Уже давно заметил, что после выпуска очередной игры, период подъёма и эйфории сменяется чувством полного опустошения. И ситуация с игрой "Луна-9" не стала исключением. Хотя мне и казалось, что на этот раз я работал относительно "спокойно" и вообще стал гораздо более толстокожим... Не сработало.

Многие люди делают игры, пишут книги, рисуют и занимаются другим творчеством. Возможно, некоторые считают, что делают что-то особенное. При этом, очевидно, только немногие получают признание. Когда ты увлечён, когда твоя история живёт в голове днём и ночью -- всё в порядке! В этот момент творчество не требует оправдания. Ты делаешь то, что должен. Окрыляющая сила удерживает тебя от падения. Но этот период заканчивается и снова начинаются вопросы. Основной из которых -- зачем?

Я отдаю себе отчёт, что делаю странные вещи, которые вряд-ли можно назвать "играми" в полном смысле этого слова. Я точно не знаю, есть ли у меня аудитория, а если есть, какая она. Я не знаю, делаю ли я что-то хорошее, или работаю "в стол". Моё творчество не носит коммерческий характер, поэтому у меня нет обратной связи в виде "продаж". Мои попытки "продвигать" игры часто захлёбываются. Нередко, встречаются с грубой и циничной реакцией, что портит нервы. То-есть, в моменты отсутствия той самой окрыляющей силы, мой здравый смысл говорит мне: брось, это никому не нужно! Ты заигрался. Ты тратишь свою жизнь впустую! Спустить на землю. Твои игры унылы, занимайся работой, семьёй, бытом. Читай больше книг. Не трать свои ресурсы впустую!

И мне нечего возразить ему, этому здравому смыслу. Творчество иррационально и убыточно.

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

В этот раз я решил ещё раз сбросить с себя ненужные мне сетевые связи. Покинул большинство чатов в Discord, Telegram. Ушёл из ФИДО. Закрыл проект "чат-метапарсер". Это были парсерные игры в виде чат-ботов для VK, Telegram, Discord. Кроме того, я не писал о своей игре на linux.org.ru, gamin.ru и dtf.ru... Но всё-равно, накрыло...

Сейчас мне кажется, что "Луна-9" моя последняя игра. Пора возвращаться в реальность. Убрать лишний мусор. Залечь на дно...

# Вирт о простоте
std.hugeping
hugeping(ping,1) — hugeping
2021-02-11 08:14:41


http://oberon2005.oberoncore.ru/paper/fatprog.pdf

Просто, чтобы не потерять.

# Re: Бороздим интернет без браузера
std.hugeping
artur(ping,3) — hugeping
2021-02-09 18:41:30


А, понял.

С каждым месяцем всё больше убеждаюсь, что таскать "чисто текст" не так уж и неудобно. Вот и гемини удобный...
На подобные настроения подбивает слабый интернет, жирные популярные сайты (ВК, сервисы Google, например).
А пост в закладочки добавлю, лишним не будет=)

# Re: Бороздим интернет без браузера
std.hugeping
hugeping(ping,1) — artur
2021-02-09 13:05:14


>>победить интернет
artur> Это современный жирный или вообще?=)

Это я скорее, как фигура речи. :)

# Re: Бороздим интернет без браузера
std.hugeping
artur(ping,3) — hugeping
2021-02-08 16:32:00


>Главное открытие, которым я хотел поделиться в этой статье, состоит в том, что победить интернет можно и это не так сложно, как кажется на первый взгляд!

>победить интернет

Это современный жирный или вообще?=)

# Re: Бороздим интернет без браузера
std.hugeping
vvs(ping,12) — hugeping
2021-02-08 13:10:54


youtube-dl же. Если удалось вытащить все из youtube, то можно все. Но какой ценой? Тот-же youtube-dl новые версии вынужден делать очень часто. И каждый раз надо реверсить все новые хитрости гугла. Столько усилий оправдано только большим спросом на видео. Стоит ли бороться с каждым отдельно взятым банком?

# Бороздим интернет без браузера
std.hugeping
hugeping(ping,1) — All
2021-02-08 08:53:07


После погружения в gemini и создания своей "капсулы" в нём, мне стало интересно сделать какие-то свои сервисы. Сначала, я прикрутил прогноз погоды по данным METAR-станций. Потом -- добавил поиск по Библии. И тут я понял, что формат gemini просто идеален для использования его как простого интерфейса для личных сервисов!

Выдача gemini -- простой текст. При этом, ссылки всегда находятся на отдельной строке. Это очень наглядно и здорово. Имея свой gemini-сервер и наполняя его нужными сервисами, ты получаешь удобный, чистый и наглядный интерфейс из любого уголка сети!

В Plan9 нет (и не может быть) современного браузера. Почему его не может быть, хорошо описано здесь: https://habr.com/ru/post/541196/ Это сильно пересекается с моей заметкой о ненастоящей победе open source: ii://HZhphc84EsazyASVPck3 Поэтому, в Plan 9 я уже сталкивался с ситуациями, когда мне приходилось делать запросы к веб-ресурсам руками, чтобы авторизоваться, получить нужную информацию в удобном виде и т.д. Но каждый раз это была уникальная ситуация.

А что если совместить всё? Формат gemini -- как чистая выдача. Прямые запросы -- для получения той информации сети, которая нужна. Очищенная от тонн мусора. Оформление полученного инструмента как утилит командной строки, для применения их прямо в acme, а также в виде сервисов gemini! Это может быть интересно!

Есть ситуации, когда сайт предоставляет свой контент через rss. Здесь всё понятно. Но таких сайтов немного. Особенно тех, которые предоставляют в ленте статьи целиком. Есть ситуации, когда сайт отдаёт свои данные по общедоступному rest API. Но это тоже не является общей ситуацией и требует детального изучения этого API. Поэтому я начал с утилиты, которая бы делала GET запрос и вытаскивала из HTML только те узлы документа, которые мне нужны.

Написал, конечно же, на go: https://github.com/gl00my/clearweb/tree/master/htmlcut

Утилита крайне простая! Мы просто задаём тип элемента, одно из ключевых свойств и режим поиска: regexp/совпадение/нахождение подстроки. Если какой-то узел попал в выборку, то в неё же попадёт и все вложенные элементы. Не смотря на свою примитивность, оказалось, что таких функций достаточно. Добавив режим отрицания логики и запуская утилиту в UNIX-конвеерах я смог получать дистиллированный текст статей из: живого журнала, хабра, stackoverflow...

У нас есть текст статьи, но читать его с html тегами невозможно. На github я нашёл утилиту html2gmi и оказалось, что она отлично работает!

Я почистил её от лишних мне функций, и немного поменял для нужного мне поведения: https://github.com/gl00my/clearweb/tree/master/htmlgmi

В качестве примера работы утилит в связке, приведу пример чтения статьи на habr:

curl -s "$1" | htmlcut -val '(post\_full|comment\_\_message|user\-info\_inline)' -regexp | htmlgmi -m -n

А вот фрагмент выдачи для статьи, которую я упоминал выше:

Увидев вот эту публикацию [8] про браузерные войны, я хотел было написать альтернативное наблюдение за тем, как мы докатились до такой жизни. Но Дрю ДеВолт уже всё сказал за меня.

Начиная с первых войн между Netscape и IE, главным инструментом в конкурентной борьбе браузеров стала функциональность. Вот только стратегия неограниченного роста и расширения — совершенно безумная. Слишком долго мы позволяли ей продолжаться.

С помощью wget я скачал все 1217 спецификаций W3C [9], опубликованных на текущий момент 1. Существенная часть из них должна быть реализована в браузере, чтобы современный веб работал. Я подсчитал объём этих спецификаций. Как думаете, насколько сложен современный веб?

=> https://habr.com/ru/post/541180/ [8]
=> https://www.w3.org/TR/ [9] спецификаций W3C

Не знаю как у вас, а у меня при просмотре статьи в таком формате радостно щемит сердце.

Результат меня вдохновил! Я понял, что могу читать интернет прямо в acme! Просто запуская нужные скрипты. Или написав прокси-скрипт, который сам анализирует ссылки и обрабатывает выдачу.

Но сначала нужно было решить проблему с поиском. Мне нужно было искать в acme! Ну, или из консоли.

В gemini на капсуле Толстоевского gemini://rawtext.club/~tolstoevsky/ я узнал о таком метапоисковике как searx, который использует в своей работе google, duckduckgo и так далее. При этом, он не собирает телеметрию. SearX показался мне очень удобным и для начала я просто прогнал его выдачу через свои утилиты:

curl -s -X POST -F 'q='"$q" -F 'category_general=1' -F 'pageno='"$page" https://search.fedi.life/search | htmlcut -val '(result.content|external.link|result.header)' -regexp | htmlgmi -l 0 -m -n

Результат понравился:
INSTEAD [1]
http://instead-hub.github.io
Instead | Definition of Instead by Merriam-Webster [2]

=> http://instead-hub.github.io [1].

Просто абзац текста, ссылка. Абзац текста, ссылка. Где то на этом моменте я начал плакать от умиления. Но парсинг HTML вывода это всё-таки грубо. Почитав про API SearX я узнал, что можно получать выдачу прямо в RSS! И написал ещё одну примитивную программу на go, которая делает всю работу:

https://github.com/gl00my/clearweb/tree/master/searx

Итак, мечта сбылась. Я могу искать в интернете откуда угодно. Из консоли. Из acme. На сервере gemini. И мне не нужен браузер!

Теперь не составило труда оформить поисковик в виде gemini сервиса. Что я и сделал. gemini://hugeping.tk/searx

Я немного увлёкся, и проксировал вывод выдачи на stackoverflow.com так, что теперь можно искать статьи и читать их не уходя из gemini.

Скрипт вывода статьи на stackoverflow получился таким:
curl -s "$1" | htmlcut -val '(js\-post\-body|answers\-subheader)' -regexp | htmlcut -val '(js\-filter)' -regexp -not | htmlgmi -l 0 -m -n

Узнавать нужные элементы вёрстки удобно в инспекторе Firefox.

Что дальше?

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

Главное открытие, которым я хотел поделиться в этой статье, состоит в том, что победить интернет можно и это не так сложно, как кажется на первый взгляд! Да, в выдаче большинства ресурсов находится 99% шлака, но вырезать %1 нужного контента -- посильная задача. И вдруг оказывается, что доступ к нужной информации в веб не обязательно предполагает запуск браузера и приём тонн мусора в свою голову. Эта мысль вдохновляет и поощряет на дальнейшие эксперименты.

> Но на вершине самой высокой и неприступной скалы сидят золотой и красный дракон. Кто это? А это банковские сайты и госуслуги. Удастся ли приручить и их? Пока страшно об этом даже думать, правда? :)

P.S. Edited: 2021-02-09 06:27:39

# Re: Потерянный Internet
std.hugeping
hugeping(ping,1) — boscholeg
2021-02-05 19:07:35


Есть такой вот проект: https://flounder.online/
Это хостер gemini страничек для тех, кто не хочет/может поднимать свой сервер.
Странички смотрят в gemini:// и в web по https. Выглядят вполне симпатично:

Например: https://maple.flounder.online/

Так что, если кто хотел, но стеснялся, ленился или просто не мог -- можно создавать контент прямо сейчас. :)

P.S. Это не единственный хостер, но выглядит просто и симпатично.

# Re: Потерянный Internet
std.hugeping
boscholeg(ping,5) — hugeping
2021-02-02 19:11:00


Будет еще полезная информация не забудь поделиться.

# Re: Потерянный Internet
std.hugeping
hugeping(ping,1) — vvs
2021-02-02 16:24:34


vvs> А вот, кстати, в чем разница между публикацией в сети и в печати?
vvs> ... Такие площадки способствуют возникновению мотивов для вовлечения людей в потребительство и борьбу за власть, что не случайно, КМК.

Да, есть о чём подумать. :)

# Re: Потерянный Internet
std.hugeping
vvs(ping,12) — hugeping
2021-02-02 14:24:01


hugeping> Мы отвыкли читать, думать. Отвыкли от тишины. Не знаю как вы, а я за собой это отчётливо замечаю. Современный веб разрывает сознание на околки, за каждый из которых ведётся отчаянная борьба маркетоидов.

А вот, кстати, в чем разница между публикацией в сети и в печати? Книга рассчитана на читателя, а пост в социальной сети - на комментаторов. "Чукча не читатель - чукча писатель" (бородатый анекдот). Я бы сказал, что подобная разница существует и между библиотекой и базаром. Ну, так и где вероятней появление торговцев и рекламы? Можно, конечно засунуть рекламу и на обложку книги, но эффект будет уже не тот - нет обратной связи, т.е. таргетирования аудитории. У меня есть несколько знакомых, вовлеченных в сетевой маркетинг. А раньше были нормальные люди. Такие площадки способствуют возникновению мотивов для вовлечения людей в потребительство и борьбу за власть, что не случайно, КМК.
P.S. Edited: 2021-02-02 14:24:37

# Re: Потерянный Internet
std.hugeping
vvs(ping,12) — hugeping
2021-02-01 12:41:42


"Всякую революцию задумывают романтики, осуществляют фанатики, а пользуются ее плодами отпетые негодяи." Т.Карлейль

Это относится и к интернету тоже. Лучше общаться с конкретным человеком.

Вообще, искать нечто нетленное в социальных сетях - зря потерянное время. Для этого существуют книги. А интернет - просто транспорт.

# Re: Потерянный Internet
std.hugeping
hugeping(ping,1) — hugeping
2021-02-01 09:15:58


Пока я писал это сообщение, от техподдержки ЖЖ пришёл ответ.
В общем, кросспостинг возможен только с помощью "профессионального" пакета.

Прекрасная иллюстрация, правда? :)

# Потерянный Internet
std.hugeping
hugeping(ping,1) — All
2021-02-01 08:35:34


После молчаливой блокировки моего аккаунта в ЖЖ, на который я транслировал свои статьи из блога, я снова задумался о том, что интернет мы потеряли окончательно.

Начал смотреть другие площадки и понял, наконец, простую истину. Все они ориентированы на коммерцию. Например, трансляция сайта в Zen предполагает монетизацию с самого начала. Кроме того, на свой сайт ты должен поместить js код. Для трансляции RSS в Facebook тоже нужно что-то вроде "бизнес" аккаунта. Для твиттера нужен телефон и перевод аккаунта в новый статус. В общем, везде я натыкался на вот это вот: "продвижение", "бизнес аккаунт", "маркетинг". Потом вспомнил ситуацию с моими парсерными играми в VK, которые не были одобрены с формулировкой "не привлекательны для пользователей"...

Короче, я прозрел окончательно. Я понял, почему я перестал находить статьи, которые были бы мне интересны: честные, личные, умные. Ещё раз вспомню прекрасную "Компьютерру". У этого журнала не было шансов, ведь он не представлял ценность для рекламодателей... Тот контент который мне нужен просто выдавлен слепым, уродливым и жадным современным shit-вебом.

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

Тогда я снова обратил внимание на #fideverse. И лично для себя пришёл к выводу, к которому прихожу каждый раз, когда возвращаюсь к этой теме. А слежу я за ней давно, ещё с появления Diaspora. В общем, главная ошибка fediverse-движения -- это попытка копировать современный Web2.0. Смысл понятен. Смотрите, у нас мастодон как твиттер, только лучше! Беда только в том, что "обычным" и "нормальным" людям уютно находиться в золотой клетке. Технические особенности их не волнуют. А законы распространения и поддержки контента -- одинаковы и в fideverse и в коммерческом вебе! Только в твиттере "всплывает" одно, а в мастодоне -- другое. А так, ну то же самое: мемасики, мат, политические лозунги, прочий флуд... Формат способствует. Ориентироваться надо не на "обывателя".

Мы отвыкли читать, думать. Отвыкли от тишины. Не знаю как вы, а я за собой это отчётливо замечаю. Современный веб разрывает сознание на околки, за каждый из которых ведётся отчаянная борьба маркетоидов.

В общем, в качестве жеста отчаяния я снова спустился в "подполье" и поднял "капсулу" в gemini. Что такое gemini? https://gemini.circumlunar.space/

Кратко, это "исправленный" до необходимого минимума gopher. В частности, UTF-8, разметка в виде упрощённого markdown и поддержка tls (хотя, лично моё мнение, tls -- это уже лишнее). Для просмотра страничек есть свои браузеры и web-прокси. Есть поисковая система.

gemini появился не так давно, но стремительный рост числа клиентов и серверов вдохновляет! Клиенты есть и под Plan9.

В общем, такой экстремальный дауншифтинг в сеть, в которой есть только информация. И честно говоря, мне это нравится. Я бы сказал, что станция ping пытается следовать тем же ориентирам. IDEC и gemini прекрасно дополняют друг-друга! Я предлагаю вам посмотреть на gemeni самим. По крайней мере это любопытно. А любопытство, надеюсь, у нас ещё осталось. :)

До связи!

А ниже я написал немного информации для старта.

# Браузеры

* lagrange -- изумительной красоты браузер с фронтендом на SDL2. Сейчас пользуюсь именно им. https://github.com/skyjake/lagrange
* amfora -- консольный браузер. Неплохо выглядит, но lagrange -- красивее и удобнее.
* deedum -- для Android. https://play.google.com/store/apps/details?id=ca.snoe.deedum&hl=en&gl=US

# Серверы

Смотрел серверы на go. Их много. Я запомнил два.

* brown-molly -- похоже, "стандарт" сервера. https://tildegit.org/solderpunk/molly-brown
* net-gemini -- очень маленький, использую его со своими изменениями https://github.com/jackdoe/net-gemini

# Сертификаты

Сначала боялся, что придётся морочиться с letsencrypt. Но нет, gemini признаёт самоподписанные сертификаты. Поэтому, просто:

openssl req \
            -x509 \
            -out somesite.tk.cer \
            -keyout somesite.tk.key \
            -newkey rsa:2048 \
            -days 3650 \
            -nodes \
            -sha256 \
            -subj '/CN=somesite.tk' \
            -extensions EXT \
            -config <( printf "[dn]\nCN=somesite.tk\n[req]\ndistinguished_name = dn\n[EXT]\nsubjectAltName=DNS:somesite.tk\nkeyUsage=digitalSignature\nextendedKeyUsage=serverAuth" )
somesite.tk заменить на FQDN своего ресурса.

# Разметка

Подмножество маркдауна. Есть секции (#). Есть преформатированный текст (```). Есть список (*). Ссылки оформляются особым образом. По одной на каждой строке. Подробности: https://gemini.circumlunar.space/docs/specification.html

# Поднимаем статический сервер

Создаём каталог с файлами .gmi. Стартовый файл обычно называется index.gmi (может зависеть от сервера, но пока все серверы, что я смотрел, работали именно с index.gmi). Генерим ключ и сертификат и запускаем сервер. И это всё! Теперь свою "капсулу" стоит добавить в gemini://gus.guru

Вы можете раздавать картинки и другие файлы, просто создайте на них относительные ссылки в .gmi файле:

=> /images/cat.png Тут котик!

Картинки отлично смотрятся в браузере lagrange!

# Некоторые ресурсы

* gemini://gus.guru -- поисковик
* gemini://wp.glv.one -- Википедия (прокси?)
* gemini://hugeping.tk -- станция ping

P.S. Пока я писал это сообщение, от техподдержки ЖЖ пришёл ответ. В общем, кросспостинг возможен только с помощью "профессионального" пакета. Прекрасная иллюстрация, правда? :)

P.S. Edited: 2021-02-01 09:16:04

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
hugeping(ping,1) — Andrew Lobanov
2021-02-01 06:49:39


AL> И правда. Lagrange просто ругается на сертификат, но ресурс открывает.

Сегодня сделал 2 сертификата, всё вроде заработало!

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
hugeping(ping,1) — boscholeg
2021-02-01 06:48:51


boscholeg> Спрашивается, кто дал право решать, что кому интересно, а что нет.

Ну в случае VK, понятно. Парсерные игры "не радуют". :) Сегодня текст -- это не круто. На самом деле, грустное явление.

boscholeg> Надо искать единомышленников и дербанить Яндекс петициями.

На Яндекс Zen я в итоге не сунулся даже. Так что и петиции писать нет смысла. :) Там просто ориентация на коммерцию сразу же.

boscholeg> Появляется идея некоей "неподконтрольной" общественной площадки. Но вот как её организовать?

Мне не нравится слово "неподконтрольная". Все мы видим, какой контент в основном присутствует в даркнетах, например. Нет, я бы озвучил проблему так:

> На данный момент не существует широко известных общественных некоммерческих площадок.

Ну, как бы, и ладно. Не очень то и хотелось. У меня есть "станция ping", этого достаточно.

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
boscholeg(ping,5) — hugeping
2021-02-01 06:25:00


Как говорил один наш юморист - Зла не хватает на это все смотреть.
Спрашивается, кто дал право решать, что кому интересно, а что нет.
Надо искать единомышленников и дербанить Яндекс петициями.
Можно еще и подключить каких нибудь общественников. Хотя наверное Яндексы скажут - это наша площадка и мы делаем что хотим.
Появляется идея некоей "неподконтрольной" общественной площадки. Но вот как её организовать?

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
Andrew Lobanov(tavern,1) — hugeping
2021-02-01 05:34:49


hugeping>>> Сделал трансляцию своего блога в gemini. gemini://hugeping.tk
AL>> Не открывается. Только gemini://syscall.ru доступен :)
hugeping> В некоторых клиентах (амфора) и правда, ругается на сертификат. Вероятно, придется более сложный сервер поднимать, чтобы можно было несколько сертификатов использовать.

И правда. Lagrange просто ругается на сертификат, но ресурс открывает.

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
hugeping(ping,1) — Andrew Lobanov
2021-02-01 04:53:36


hugeping>> Сделал трансляцию своего блога в gemini. gemini://hugeping.tk

AL> Не открывается. Только gemini://syscall.ru доступен :)

В некоторых клиентах (амфора) и правда, ругается на сертификат. Вероятно, придется более сложный сервер поднимать, чтобы можно было несколько сертификатов использовать.

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
Andrew Lobanov(tavern,1) — hugeping
2021-02-01 03:48:29


hugeping> Сделал трансляцию своего блога в gemini. gemini://hugeping.tk

Не открывается. Только gemini://syscall.ru доступен :)

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
hugeping(ping,1) — hugeping
2021-01-31 18:26:19


Сделал трансляцию своего блога в gemini. gemini://hugeping.tk
Не спрашивайте меня, зачем. Не спрашивайте -- что это такое.

Это просто факт. :)

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
hugeping(ping,1) — hugeping
2021-01-30 11:06:07


В общем, свобода свободой, но всё довольно-таки грустно.

1. В своё время, приложение для VK с приложением для метапарсера не прошло модерацию в формулировке "не интересно".

2. Товарищи из ЖЖ молча удалили трансляцию моего блога. API я их не мучал, залил все статьи в первый день и 4 дня трансляций не было.

3. В Zen для импорта RSS с сайта нужно, чтобы у каждой статьи была картинка минимум 300px. Но, это ладно, можно сделать (и даже - сгенерировать из банка). Но главное, трансляция невозможна без:
- монетизации;
- вставки js кода;
- одобрения "интересности" контента (тут смотрим на пп.1)

Теперь мне понятно, почему из сети пропали интересные мне материалы. Единственное, что остаётся, существовать в подполье (или закрываться).

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
vvs(ping,12) — hugeping
2021-01-29 23:13:12


А у меня блокировали мой единственный пост в reddit. Я там всего лишь поделился своим недоумением по поводу отказа от поддержки 32-битных архитектур, с моим мнением, почему этого не стоит делать. Первые несколько дней у меня было всего несколько процентов поддержки и масса хейтеров. Однако, через какое-то время процент поддержки внезапно вырос до 30 и пост сразу заблокировали. Обоснование модератора: мои высказывания о производителе ОС были недостаточно уважительны. Даже не знаю, что это означает - матом ругаться я не привык. На коленях надо было лобызать им сапоги? Я просто плюнул и ушел. Судя по тому, что я вижу в прессе, так сейчас везде. Свобода слова во всей красе. Ну и пес с ними.

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
hugeping(ping,1) — hugeping
2021-01-29 21:15:48


ЖЖ заблокировал мой блог. :)
Теперь понятно, почему все оттуда бегут. :( Жаль, хорошие были воспоминания.

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
Andrew Lobanov(tavern,1) — boscholeg
2021-01-26 08:26:54


boscholeg> Ну что-то ты раскис совсем. Галстук завязывать - это как на велеке кататься.

Вот, кстати, не согласен. Галстук я последний раз завязывал перед свадьбой. Недавно возникла необходимость завязать, а не помню! А вот на велике помню отлично. Минуты две я повихляю и еду спокойно.

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
vvs(ping,12) — hugeping
2021-01-25 12:48:10


hugeping> Вообще, похоже, я застрял в прошлом. Вчера, например, искал инструкцию по завязыванию галстуков. Долго искал, потому что в большинстве случаев это были юиуб-ролики, а я хотел текст + картинки. В итоге сдался и вместо текста запускал и смотрел видосик. :(

https://flibusta.is/booksearch?ask=%D0%BA%D0%B0%D0%BA+%D0%B7%D0%B0%D0%B2%D1%8F%D0%B7%D1%8B%D0%B2%D0%B0%D1%82%D1%8C+%D0%B3%D0%B0%D0%BB%D1%81%D1%82%D1%83%D0%BA

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — Andrew Lobanov
2021-01-25 12:38:22


AL> Ну для меня точно так же анонимен Пётр Косых. Даже если это рилнейм :) Или для тебя анонимен Андрей Лобанов. Речь не о том, вроде.

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

Если речь о настоящей анонимности, то я такой нигде не видел. То есть когда у человека нет ни постоянного адреса, ни имени, ни каких-то индивидуальных признаков. И таки да, то что Петр Косых это настоящее имя - требуется принимать на веру. Документов я не видел, если что. Да и "изготовить советский паспорт, при нынешнем развитии печатного дела на западе - это такая мелочь..." ;P Единственное, что мне действительно известно - это что существует некий пользователь (или несколько пользователей), публикующих INSTEAD и какие-то заметки в блоге. Кто все эти люди, называющие себя разными именами - Бог его знает. Может это все проделки искусственного интеллекта или Нео с Морфеусом. Это псевдонимность и есть.
P.S. Edited: 2021-01-25 12:40:14

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
boscholeg(ping,5) — hugeping
2021-01-25 11:26:29


Ну что-то ты раскис совсем. Галстук завязывать - это как на велеке кататься. Один раз научишься и порядок. Видос кстати удобнее. Я как раз по дебильным схемам учился. :)))
А будешь снимать не развязывай совсем а только узел ослабь. И потом еще пару раз одеть можно не завязывая если он чистый остался. Я так всегда делал пока на заводе работал в КБ.
Гораздо сложнее удачный галстук (купить/выбрать)заполучить.
А ютубчик не стоит со счетов сбрасывать. Он хоть и пошловат, но может работать как промо-площадка. Библиотекарь не зря в комментах под видосами постит ссылки на сообщество. Я кстати в сообщество попал как раз его стараниями.

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
hugeping(ping,1) — boscholeg
2021-01-25 07:36:17


boscholeg> Тогда надо еще добавить трансляцию сообщений в ютуб. Там есть сообщество и можно постить сообщения. Этим сейчас активно пользуются.

Да цели особенной нет. Просто решил почитать ЖЖ в его текущем виде, сделал аккаунт. Потом понял, что могу запостить туда сообщения с ноды. И понеслась. :)

Вообще, похоже, я застрял в прошлом. Вчера, например, искал инструкцию по завязыванию галстуков. Долго искал, потому что в большинстве случаев это были юиуб-ролики, а я хотел текст + картинки. В итоге сдался и вместо текста запускал и смотрел видосик. :( Не знаю, не люблю видео. От видосов у меня обычно стресс, потому что приходится напрягаться и держать себя в тонусе. Ну это почти как принять телефонный звонок. :)

# Re: Эффективность против простоты
std.hugeping
boscholeg(ping,5) — hugeping
2021-01-25 07:22:17


Мне лично код отрисовки линии из твоего примера кажется куда понятнее кода относящегося к ядру. Но это потому, что первое я изучал, а второе вижу впервые.
Но в последнее время претит писать сложные куски кода. Иногда часами сижу и раздумываю как написать попроще и понятнее. Инвертирую условия, смотрю какие ветки выполняются с большей вероятностью. Разбиваю задачки на мелкие фрагменты. Хотя работы минут на десять от силы.
Коллеги теперь иногда жалуются, что мой код излишне декомпозирован и разбит на мелкие фрагменты. Иногда эти компоненты излишне простые и даже примитивные.
Теперь борюсь с собой, чтобы излишне долго с кодом не ковыряться.

# Re: Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
boscholeg(ping,5) — hugeping
2021-01-25 07:09:38


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

# Re: Анонимность и искренность
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2021-01-25 05:29:39


AL>> В нодлисте не могло быть о тебе информации так как ты не был нодой. Оператор твоей ноды знал тебя лично и нёс ответственность за твои действия в сети. О какой анонимности может идти речь в таких условиях?
vvs> Ну да. И в поинтлисте тоже, хотя это было так давно, что многое уже стало забываться.
vvs> Но я не вижу никакой связи между моим знакомством с оператором и анонимностью в *сети*. Остальные-то меня не знали. Я лично знал еще несколько других операторов нод, но вряд ли они даже догадывались, что это именно мой адрес в FIDO. И я не могу себе представить, что они стали бы пытать моего знакомого, чтобы он им сообщил кто его поинт на самом деле. Ну максимум бан он мог бы получить из-за меня - это наши личные с ним отношения, не более. Каким это образом угрожало моей анонимности? Это совершенно разные вещи, КМК.

Ну для меня точно так же анонимен Пётр Косых. Даже если это рилнейм :) Или для тебя анонимен Андрей Лобанов. Речь не о том, вроде.

# Трансляция моего блога в ЖЖ и в Telegram
std.hugeping
hugeping(ping,1) — All
2021-01-24 14:15:52


Привет всем, кто на связи!

Теперь, содержимое моего блога транслируется в ЖЖ: https://hugeping.livejournal.com и в телеграм канал: https://t.me/pingblog

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

Stay tuned! :)

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — vit01
2021-01-22 17:43:10


vit01> Если аудитория тебя не понимает или не хочет слушать, то это либо проблема аудитории (и надо вещать на других людей), либо твоя проблема, что недостаточно хорошо информацию доносишь. Но это не проблема площадки.

Тут я несколько заблудился. Если площадка - это не аудитория и не я, то что же это такое? Drupal? :)

vit01> Так если ты строишь сложные философские конструкции, то тебе тем более нужно брать и стараться доносить это подробно/наглядно, либо беседовать только с такими же "профессорами", которые доросли до обсуждения таких вещей, а не с широкой публикой

Хм... А я то как раз считал, что форум, на котором посторонних не бывает и о котором даже мало кто знает - это не широкая публика.

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

vvs>> Лично мне не интересно, убеждать кого-нибудь, что 2+2=4 в моем понимании. Я ищу понимания со стороны собеседника. Если понимание невозможно, то я не вижу смысла тратить время на то, чтобы меряться длиной доказательств :)

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

Это односторонняя точка зрения. Абсолютной истины не существует, как и не может быть однозначного разделения на правых и не правых. Есть разные взгляды, которые не всегда возможно примирить. Если смысл основных понятий отличается достаточно сильно, то спорить уже больше не о чем. Сделать из собеседников совершенно других людей мне не под силу. Да и зачем мне это?

vit01> Либо выбирать тех собеседников, которые с тобой заранее согласны или которые не будут спорить. А может быть просто делать ставку на толерантность собеседника, который не будет лишний раз придираться

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

Специально искать сообщество людей, которые мне будут во всем поддакивать, представляется бессмысленной затеей. Я охотно общаюсь с людьми, понятия которых не противоречат моим. А кого доведется встретить на жизненном пути - это уж как повезет. Я не стремлюсь к спорам ради споров, а пытаюсь понять мнение собеседников. Если есть надежда на взаимопонимание, то я пытаюсь объяснить свою позицию. Если у собеседника нет желания найти взаимопонимание, то я тут бессилен.

vvs>> А разве это не навязывание своего мнения? С моей точки зрения это гипертрофированное восприятие бытовых вопросов и я не вижу здесь глубокого пересечения с вопросами самопознания.

vit01> Когда тебе могут полноценно возразить в случае несогласия, то это как раз нормальный процесс. Навязывание мнения - это когда ты доносишь информацию людям, которые не готовы на диалог или просто не могут ответить

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

vit01> Вот как раз поэтому чиновники и работают плохо, из-за того что у нас не сложился в стране институт репутации, и что про чиновников стесняются разговаривать :)

По-моему, репутация - это не то же самое, что соседские пересуды на лавочке. Для меня репутация политика оценивается не столько по тому, сколько он получает и с кем спит, сколько по тому, кем чувствуют себя граждане его страны. В 90-е все, что было мне дорого, смешали с грязью. И это для меня гораздо важнее, чем сравнение, у кого больше колбасы. Не хлебом единым, как говорится. Тем более, я еще с советских времен не привык к изобилию потребительских товаров и меня это никогда особо не беспокоило. Я противник потребительства. Наука и искусство же были вполне себе на высоте, получше, чем у многих. История и культура у нас всегда были важнее смартфонов и я хотел бы, чтобы так оставалось всегда.

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

vit01> А ещё потому что считают политику грязным делом.

А она такая и есть. Заниматься политикой для честного человека - это тяжкий крест. Ничего благородного там нет - это постыдное занятие. Слава Богу, что меня к этому никто не принуждает. И не дай Бог если это станет неизбежным, повторения 1917 и 1991 я никому не пожелаю.

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

# Re: Анонимность и искренность
std.hugeping
vit01(mira, 1) — vvs
2021-01-22 16:14:57


vvs> И проблема в том, что меня просто не понимали и не хотели слушать. Я занялся изучением формальной логики и теории доказательств. И узнал тривиальную истину: доказательство всегда основано на вере в общие с оппонентом понятия. Невозможно убедить человека в том, во что он не верит.

Если аудитория тебя не понимает или не хочет слушать, то это либо проблема аудитории (и надо вещать на других людей), либо твоя проблема, что недостаточно хорошо информацию доносишь. Но это не проблема площадки.

vvs> Проблема не в том, что у собеседника отсутствует логика, хотя и это бывает нередко. Проблема в том, что сознание больше логики и обосновать ею многие философские понятия невозможно - это вопрос мировоззрения.

Так если ты строишь сложные философские конструкции, то тебе тем более нужно брать и стараться доносить это подробно/наглядно, либо беседовать только с такими же "профессорами", которые доросли до обсуждения таких вещей, а не с широкой публикой

vit01> Не важно, анонимная площадка или нет, важно качество модерации на ней, качество аудитории и формат публикаций. Если это всё на хорошем уровне, то закидывать тебя говном не будут, а будут обоснованно критиковать

vvs> Лично мне не интересно, убеждать кого-нибудь, что 2+2=4 в моем понимании. Я ищу понимания со стороны собеседника. Если понимание невозможно, то я не вижу смысла тратить время на то, чтобы меряться длиной доказательств :)

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

Либо выбирать тех собеседников, которые с тобой заранее согласны или которые не будут спорить. А может быть просто делать ставку на толерантность собеседника, который не будет лишний раз придираться

vit01> Насчёт политики у меня мнение принципиальное, я считаю, что политика касается каждого, эти темы нужно обсуждать просто сами по себе.

vvs> А разве это не навязывание своего мнения? С моей точки зрения это гипертрофированное восприятие бытовых вопросов и я не вижу здесь глубокого пересечения с вопросами самопознания.

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

vvs> Политика сродни сантехнике: неисправный унитаз - это очень негигиенично и неудобно, но вряд ли об этом стоит трубить на каждом углу. Если уж и обсуждать влияние политики, то в масштабах человечества. Я например не против поговорить об опасности общества потребления для общего будущего, но для меня унизительно обсуждать личность конкретного чиновника.

Вот как раз поэтому чиновники и работают плохо, из-за того что у нас не сложился в стране институт репутации, и что про чиновников стесняются разговаривать :)
А ещё потому что считают политику грязным делом.
Ну и кстати про общество потребления тоже разговоры вполне себе приемлемы

+++ Отправлено через IDEC Mobile
+++ GNU/Linux, Android, physics, MLP:FIM

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — vit01
2021-01-22 14:23:23


vit01> Я здесь вижу не проблему анонимности и искренности, а просто боязнь критики и обратной связи.

vit01> Разумеется, когда ты что-то публикуешь в сети (в качестве блога или видеоблога), то сталкиваешься с критикой. И это хорошо! В каком-нибудь телевизоре людям просто спускают что-то сверху, и на это нельзя возразить, нельзя изобличить какое-то враньё, добавить анализ фактов и так далее. А в сети публика даёт обратную связь, из-за чего ты вынужден держать планку качества и обосновывать своё мнение

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

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

vit01> Не важно, анонимная площадка или нет, важно качество модерации на ней, качество аудитории и формат публикаций. Если это всё на хорошем уровне, то закидывать тебя говном не будут, а будут обоснованно критиковать

Лично мне не интересно, убеждать кого-нибудь, что 2+2=4 в моем понимании. Я ищу понимания со стороны собеседника. Если понимание невозможно, то я не вижу смысла тратить время на то, чтобы меряться длиной доказательств :)

vit01> Насчёт политики у меня мнение принципиальное, я считаю, что политика касается каждого, эти темы нужно обсуждать просто сами по себе.

А разве это не навязывание своего мнения? С моей точки зрения это гипертрофированное восприятие бытовых вопросов и я не вижу здесь глубокого пересечения с вопросами самопознания. Политика сродни сантехнике: неисправный унитаз - это очень негигиенично и неудобно, но вряд ли об этом стоит трубить на каждом углу. Если уж и обсуждать влияние политики, то в масштабах человечества. Я например не против поговорить об опасности общества потребления для общего будущего, но для меня унизительно обсуждать личность конкретного чиновника.

# Re: Анонимность и искренность
std.hugeping
vit01(mira, 1) — hugeping
2021-01-22 13:44:28


> Можно писать дневник лично, и тогда проблемы такой нет. Но ведь и отклик иногда очень важен. С людьми, которые поймут тебя, окажутся на одной волне.

Я здесь вижу не проблему анонимности и искренности, а просто боязнь критики и обратной связи.

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

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


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

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

+++ Отправлено через IDEC Mobile
+++ GNU/Linux, Android, physics, MLP:FIM

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — boscholeg
2021-01-22 13:48:48


boscholeg> И что про меня подумает начальство мне фиолетово. Хотя токая смелость пришла ко мне уже после сорока лет.

А ко мне такая смелость пришла, когда я твердо решил уволиться и изменить свою жизнь. И вот тогда я совершенно обнаглел, а мое непосредственное начальство стало меня побаиваться и увеличило мне зарплату, которую я направлял не на свои прихоти, а на достижение относительной независимости. И продолжалось это не один год. А когда я написал заявление об уходе, то меня шеф наш спросил: куда я ухожу? Я говорю в том смысле, что не куда, а откуда. Он несколько обалдел и поинтересовался, почему же я не хочу поработать еще. На что я ему ответил, что так жить дальше я не хочу. По-моему, он так ничего и не понял. А для меня вопроса искренности с тех пор больше не существует. Есть только вопрос: кто я такой и чего хочу на самом деле, а также что я думаю о других. И никто мне больше не мешает выяснять эти вопросы полный рабочий день. Но было это уже далеко после сорока.

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

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

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — Andrew Lobanov
2021-01-22 12:38:47


AL> В нодлисте не могло быть о тебе информации так как ты не был нодой. Оператор твоей ноды знал тебя лично и нёс ответственность за твои действия в сети. О какой анонимности может идти речь в таких условиях?

Ну да. И в поинтлисте тоже, хотя это было так давно, что многое уже стало забываться.

Но я не вижу никакой связи между моим знакомством с оператором и анонимностью в *сети*. Остальные-то меня не знали. Я лично знал еще несколько других операторов нод, но вряд ли они даже догадывались, что это именно мой адрес в FIDO. И я не могу себе представить, что они стали бы пытать моего знакомого, чтобы он им сообщил кто его поинт на самом деле. Ну максимум бан он мог бы получить из-за меня - это наши личные с ним отношения, не более. Каким это образом угрожало моей анонимности? Это совершенно разные вещи, КМК.

# Re: Анонимность и искренность
std.hugeping
hugeping(ping,1) — boscholeg
2021-01-22 11:47:55


boscholeg> Я конечно уже не боюсь сказать, что думаю.

А я вот наоборот, чем дальше, тем сдержанней. :) Хотя потребность иногда ощущается.

# Re: Анонимность и искренность
std.hugeping
boscholeg(ping,5) — hugeping
2021-01-22 09:08:08


Почитал твою заметку и живо представил себе как я делюсь с окружающими своими переживаниями по поводу любимых мною компьютерных игр. Люди почитают и решат, что я великовозрастный инфантил играющий в бирюльки.
А если расскажу об особенностях ухода за креветками в мелких аквариумах или о том как я проращиваю черенки лимонов, то опять окажусь странным дядькой.
Разговоры о вере вообще табуированы в нашем обществе. Это возможно обсуждать только в узком кругу.
Политические вопросы тоже не стоит поднимать - если выскажусь опять получу ярлык на лысину.
Вот и получается, что проще не выплескивать дабы не смущать окружающих.

Я конечно уже не боюсь сказать, что думаю. Но часто это звучит в стиле - "Баба яга против". И я решаю, что мне выгоднее воздержаться. Но поделиться очень хочется и нужно искать этому выход.
НО я теперь уже не опасаюсь показаться странным или смешным. И что про меня подумает начальство мне фиолетово. Хотя токая смелость пришла ко мне уже после сорока лет.

# Re: Анонимность и искренность
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2021-01-22 03:51:12


vvs> А в чем, собственно, принципиальная разница? Я пользовался FIDO в середине 90-х. Кроме телефона организации, в которой я тогда работал, в ноделисте не было никакой другой личной информации. И уж заведомо там не было моего настоящего имени. Меня знал только тот один человек, у которого я был поинтом. Правда эхи меня тогда совершенно не интересовали и я только подписался на файловые эхи и обменивался личной почтой со своей нодой. А после появления в нашей организации интернета про FIDO я вообще забыл. А мой знакомый потом уехал и мы потеряли с ним связь.

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

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — vvs
2021-01-21 18:12:31


Даже нашел у себя в архиве старый ноделист 1996 года. Правда оказалось, что склероз мне не изменяет - там моего телефона как раз и не было. Теперь вспоминаю, что был же еще поинтлист, который у меня не сохранился. То есть даже номер телефона мало кто увидеть мог. Телефон же тот стоял в большой организации и отвечал по нему модем, а в телефонном справочнике того телефона и вовсе не было. Я не припоминаю, чтобы меня тогда сильно беспокоило отсутствие анонимности. Что там можно было обо мне узнать по таким скудным данным? Оператор ноды, возможно, был в других условиях.

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — hugeping
2021-01-21 17:07:43


А в чем, собственно, принципиальная разница? Я пользовался FIDO в середине 90-х. Кроме телефона организации, в которой я тогда работал, в ноделисте не было никакой другой личной информации. И уж заведомо там не было моего настоящего имени. Меня знал только тот один человек, у которого я был поинтом. Правда эхи меня тогда совершенно не интересовали и я только подписался на файловые эхи и обменивался личной почтой со своей нодой. А после появления в нашей организации интернета про FIDO я вообще забыл. А мой знакомый потом уехал и мы потеряли с ним связь.

# Re: Анонимность и искренность
std.hugeping
hugeping(ping,1) — Andrew Lobanov
2021-01-21 16:33:41


AL> Но это моё личное мнение и я не хочу затевать спор на эту тему. По старому интернету я всё равно тоже немного скучаю.

Я когда писал заметку, всё думал про Фидо написать, но так и не написал.

Согласен, в Фидо не было анонимности. Но мне кажется, что и формат общения там был несколько иным. Мне сейчас уже трудно вспомнить, но кажется, я там больше как раз флеймил и "навязывал", чем размышлял. :) Но был нетмейл, по которому общение шло уже более мирно-интимно.

Наверное, всё-таки, формат блога, это другое.

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — Andrew Lobanov
2021-01-21 13:10:28


А меня такой разнобой мнений немного позабавил. По-моему, это очередной пример того, что разные люди вкладывают разный смысл в одни и те же понятия.

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

Я понимаю под искренностью отсутствие лицемерия. В жизни оно, это лицемерие, тоже встречается сплошь и рядом, в том числе и среди моих очень хороших знакомых. Зачастую это вовсе не плохие люди, но конформизм им необходим для успешного выживания.

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

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

# Re: Анонимность и искренность
std.hugeping
Andrew Lobanov(tavern,1) — hugeping
2021-01-21 08:10:45


hugeping> Возможно, окончательно потеряв анонимность, мы упустили возможность быть искренней перед собой хотя бы иногда.

В который раз удивляюсь разнице восприятия у разных людей. Для меня эталоном сетевого общения было фидо. И потому как раз личное знакомство и реальность собеседника, а не его ник и аватар, давали ту непередаваемую атмосферу искренности и открытости. И пусть я не всех собеседников знал лично, но их или кого-нибудь из их сети знали мои знакомые, ну а там дальше по цепочке :)

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

Но это моё личное мнение и я не хочу затевать спор на эту тему. По старому интернету я всё равно тоже немного скучаю.

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — hugeping
2021-01-20 14:09:32


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

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

# Re: Анонимность и искренность
std.hugeping
hugeping(ping,1) — vvs
2021-01-20 13:54:09


vvs> если хотите резко изменить свою жизнь - посностью поменяйте круг общения.

Совет звучит как что-то простое, но ведь в реальной жизни это практически невозможно?

# Re: Анонимность и искренность
std.hugeping
vvs(ping,12) — hugeping
2021-01-20 13:33:16


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

Поэтому анонимность для меня - это не столько укрытие, сколько просто защитная мера. Не хочу стать уязвимым для преимущественно враждебной среды, коей и является интернет. Своеобразная маска от ковида :)

# Анонимность и искренность
std.hugeping
hugeping(ping,1) — All
2021-01-20 10:39:36


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

Что значит интересного? Умного и искреннего. Сейчас, или я постарел, или интернет стал другим, или всё вместе, но я не вижу ни на одной из площадок ничего похожего на то, чем был живой журнал.

Потом посмотрел на IDEC, подумал, что давно не писал никаких заметок и тут... вдруг почувствовал один интересный момент.

Я давно публикуюсь в интернете под своим реальным именем. Я всегда считал, что если человек стесняется/прячется, то и цена его словам -- грош. Но в том же ЖЖ я публиковался под ником. Меня никто не знал. Работодатель, друзья, родственники. И я поймал себя на мысли что сам этот факт может работать как триггер!

Сейчас, как только я собираюсь что-то написать включается внутренний фильтр, который настроен на мою роль. Фильтр не пускает на выхлоп какие-то личные мысли. О вере, о любви, о жизненном опыте. Всё это рубится на корню. Но в ЖЖ я писал именно об этом.

Почему это происходит, понятно. Есть роль и она отыгрывается. Как работа. Меня знают и ожидают тех вещей, что я могу "выдать" и подсознание работает на это.

Например, если я собираюсь написать пост о Христе, внутренний цензор говорит мне, что-то вроде: Ну сейчас опять атеисты/агностики придут и будут спорить, а мне придётся быть корректным. Не стоит. А может быть, я напишу что-то неканонично? Тоже не годится! Я же православный! Думаю написать о каких-то переломных мировоззренческих моментах. Например о том, что внутренне "Я" нифига не стареет. И в 42 ты такой-же 10-летний мальчишка. Это могут найти знакомые/родственники/работодатели. Что подумают? Ну и понеслось. Даже сейчас мне захотелось отредактировать последний абзац, но не в этот раз. :)

Можно писать дневник лично, и тогда проблемы такой нет. Но ведь и отклик иногда очень важен. С людьми, которые поймут тебя, окажутся на одной волне.

Современные социальные сети в принципе не анонимны. (Я сейчас не говорю о настоящей анонимности, понятно, что вычислить тебя могут в любом случае, а о регистрации по своим реальным именам.) И тут я задумался. Возможно, в анонимности есть своё благо, которое состоит в том, чтобы дать возможность сбросить "роль". Стать чуть честнее.

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



# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — vvs
2020-12-26 19:27:07


А вот это интересный пример "простого" кода: https://berthub.eu/articles/posts/reverse-engineering-source-code-of-the-biontech-pfizer-vaccine/

Не уверен, к какому типу языка программирования его можно отнести. Пожалуй ближе к аппаратным языкам, наподобие Verilog/VHDL.

# Бывают крылья у художников
std.hugeping
hugeping(ping,1) — hugeping
2020-12-12 16:49:57


Только что услышал на канале "Культура".
Передача "Линия жизни. Евгений Стеблов" от 12.10.2020

Бывают крылья у художников,
Портных и железнодорожников,
Но лишь художники открыли,
Как прорастают эти крылья. А прорастают они так,
Из ничего, из ниоткуда.
Нет объяснения у чуда,
И я на это не мастак.

Геннадий Шпаликов

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — Andrew Lobanov
2020-12-09 12:48:02


AL> Код, который ты приводил, как раз ярко иллюстрирует мою идею. Компилятор сложная технически штука. Очень сложная. Зато она позволяет вот так просто для пользователя писать код.

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

В прошлом не раз предпринимались попытки устранить этот разрыв за счет более высокого уровня архитектуры процессора, например Intel iAPX 432. Такие попытки проиграли из-за низкого уровня технологий, приведшего к низкой производительности. Я бы напомнил, что были и попытки, наоборот, еще понизить уровень микроархитектуры для увеличения производительности, например IA-64 (Itanium). Проиграла из-за цены.

То есть я не вижу и здесь объективной сложности, а только рыночные факторы.

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — Andrew Lobanov
2020-12-08 12:45:13


AL> Скажем так, что проще, какой-нить PDP-6 или PDP-11 или мой ноут? :)

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

AL> Для адекватной оценки я предлагаю представить себе объём документации такого уровня на какой-нибудь современный сервер. С принципиальными схемами, документацией на чипы, распечатки микропрограмм и кода ОС :)

Нынешний производитель нас явно жалеет и потому не перегружает такими деталями. А в СССР каждый телевизор продавался с принципиальной схемой.

AL> Больших машин я, к сожалению, не видел, но читал про них. Конечно, тоже неоднозначно всё. Например, пакетный режим работы это одно, а интерактивный уже совсем другое. И вряд ли меня бы увлекла работа в пакетном режиме :)

Для интерактивной работы были разные системы разделения времени. И Unix появился именно тогда. А какие игры были! Colossal Cave Adventure! У нас на PRIMUS были калах и какая-то стратегия с чистым текстом. И писали все на каком-нибудь ассемблере или на, худой конец, FORTRAN IV. Конечно были и Симула-67 и Алгол-68 и Лисп, но это уже не то. :) OS/360 и VM/370 были целиком написаны на макроассемблере и настоящий системщик обязан был его знать на зубок.

# Re: Эффективность против простоты
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2020-12-08 12:03:35


AL>> А где-то глубоко внутри я просто тоскую по старым машинам, которые и не могли адекватно предоставить простой для пользователя софт и сами были достаточно простыми, чтобы можно было в них лазить паяльником чтобы улучшать.
vvs> Это в некотором роде идиллическая сказка. Старые машины далеко не всегда были похожи на это описание. И даже наоборот, бытовала точка зрения, что архитектура процессора должна быть очень высокого уровня.

Скажем так, что проще, какой-нить PDP-6 или PDP-11 или мой ноут? :)

vvs> Была такая линейка компьютеров IBM System i, которая начиналась, как IBM System/38 еще в 1978 (ее идейная предшественница System/3 еще в 1969), а потом AS/400. Отличительной особенностью было то, что программисты не имели доступа к аппаратуре, а работали только с виртуальной архитектурой, которую обеспечивала прошивка. Архитектура эта была реализована только для языков высокого уровня с компиляцией в промежуточное представление. Трансляция в машинный код осуществлялась прошивкой статически при установке этого ПО. При замене аппаратной части на несовместимую микроархитектуру ничего не надо было менять, только обновить кэш, где и хранился машинный код.

Были очень разные машины и разные идеи. Про System i, кстати, не слышал раньше. Вообще машины от IBM не попадали в поле зрения пока. Надо будет восполнить пробел.

vvs> Я лично их не видел, но сам начинал работу на ЕС ЭВМ (аналог IBM S/370 модель 138), которая на простые машины тоже была не слишком похожа. Хотя с паяльником туда действительно лазили, предварительно с помощью осциллографа найдя неисправный ТЭЗ. Я до сих пор жалею, что не утащил альбомы с принципиальными схемами, которые потом все погибли во времена перестройки. Сейчас наверное уже ничего не сохранилось. Все там было большое, например пакет дисков объемом 29 МБ весил несколько кг, а переключатели и кнопки были, наверное, не меньше пяти см. Рама там была из литого металла и весила наверняка центнеры и могла выдержать последствия ядерного взрыва если не в самом эпицентре, конечно. Одна документация занимала целые шкафы. Зато там были и принципиальные схемы, и распечатки микропрограмм и кода ОС. Терминалы были действительно векторные, поскольку ЭЛТ не имела строчной развертки и луч действительно рисовал изображение на люминофоре, а контроллеры выглядели, как железные шкафы. В машинном зале все гудело и стрекотало, и ощущения были совсем не похожи на те, которые испытываешь рядом с ПК. :)

Для адекватной оценки я предлагаю представить себе объём документации такого уровня на какой-нибудь современный сервер. С принципиальными схемами, документацией на чипы, распечатки микропрограмм и кода ОС :)

Больших машин я, к сожалению, не видел, но читал про них. Конечно, тоже неоднозначно всё. Например, пакетный режим работы это одно, а интерактивный уже совсем другое. И вряд ли меня бы увлекла работа в пакетном режиме :)

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — Andrew Lobanov
2020-12-07 22:31:02


AL> А где-то глубоко внутри я просто тоскую по старым машинам, которые и не могли адекватно предоставить простой для пользователя софт и сами были достаточно простыми, чтобы можно было в них лазить паяльником чтобы улучшать.

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

Была такая линейка компьютеров IBM System i, которая начиналась, как IBM System/38 еще в 1978 (ее идейная предшественница System/3 еще в 1969), а потом AS/400. Отличительной особенностью было то, что программисты не имели доступа к аппаратуре, а работали только с виртуальной архитектурой, которую обеспечивала прошивка. Архитектура эта была реализована только для языков высокого уровня с компиляцией в промежуточное представление. Трансляция в машинный код осуществлялась прошивкой статически при установке этого ПО. При замене аппаратной части на несовместимую микроархитектуру ничего не надо было менять, только обновить кэш, где и хранился машинный код.

Я лично их не видел, но сам начинал работу на ЕС ЭВМ (аналог IBM S/370 модель 138), которая на простые машины тоже была не слишком похожа. Хотя с паяльником туда действительно лазили, предварительно с помощью осциллографа найдя неисправный ТЭЗ. Я до сих пор жалею, что не утащил альбомы с принципиальными схемами, которые потом все погибли во времена перестройки. Сейчас наверное уже ничего не сохранилось. Все там было большое, например пакет дисков объемом 29 МБ весил несколько кг, а переключатели и кнопки были, наверное, не меньше пяти см. Рама там была из литого металла и весила наверняка центнеры и могла выдержать последствия ядерного взрыва если не в самом эпицентре, конечно. Одна документация занимала целые шкафы. Зато там были и принципиальные схемы, и распечатки микропрограмм и кода ОС. Терминалы были действительно векторные, поскольку ЭЛТ не имела строчной развертки и луч действительно рисовал изображение на люминофоре, а контроллеры выглядели, как железные шкафы. В машинном зале все гудело и стрекотало, и ощущения были совсем не похожи на те, которые испытываешь рядом с ПК. :) Машинный код можно было увидеть и пощупать руками, когда держишь в руках перфокарту с отверстиями пробитыми в разных местах. А потом вставить ее в устройство чтения, выставить его адрес на панели ЦП и нажать на кнопку загрузки.
P.S. Edited: 2020-12-07 23:41:00

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-07 17:53:58


hugeping> Так что мне кажется, что тут можно говорить об антропном принципе в оценке сложности. :)

Поскольку меня очень удручает вероятность непознаваемости вселенной для человека, то моя самая большая мечта - это избавиться в исследованиях от антропного принципа. Я всегда ищу способы, как получить возможность оценивать все не только человеческим мозгом, а чем-нибудь более универсальным. Еще лучше не из нашей вселенной, но это уже совсем дикие фантазии. Но тут есть другая опасность, что ответ действительно окажется 42 :)

P.S. Тут точнее было бы говорить об избавлении от субъектоцентризма.

P.S. Edited: 2020-12-07 18:34:44

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-07 17:33:36


hugeping> Насчёт Singularity возникли мысли, но уже не буду писать, а то много текста. :)

Сам туда очень давно не заглядывал, а там есть ссылки на аналогичные проекты. И среди них Inferno. Впрочем, туда я тоже давно не заглядывал :)

А вообще, действительно, основное отличие Inferno от Plan 9 - это исполнение пользовательского кода на языковой виртуальной машине. Кроме того, меня подкупила там возможность использования совместно с обычной ОС.

Времени на все, к сожалению, не хватает - это самый ограниченный во вселенной ресурс :(

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-07 17:10:12


hugeping> Не знаю. Мне сейчас кажется, что всё-таки будет некий предел, который ограничит дальнейший рост.

Ха-ха. "Есть две бесконечные вещи — Вселенная и человеческая глупость. Впрочем, насчёт Вселенной я не уверен" А.Эйнштейн

Я бы еще сюда добавил и жадность.

# Re: Эффективность против простоты
std.hugeping
hugeping(ping,1) — vvs
2020-12-07 16:47:35


vvs> Инженерное решение - это всегда компромисс между желанием и имеющимися ресурсами. Наука и искусство этим напрямую не связаны, хотя, например, физика косвенно зависит от инженерных решений.

Можно ли сказать, что какие-то числа объективно большие, а какие-то -- не очень большие?

На первый взгляд, нельзя. Ведь всегда можно выбрать число больше. И вообще, 10 это много или мало? Относительно 1 -- много! Но мне кажется, что есть всё-таки какая-то мера сложности, которая должна оцениваться относительно меры сложности человека и мира, в котором он живёт.

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

Были 8битные процессоры. Объективно -- не хватало. Потом 16, лучше, но не всегда хватало. 32 бита! Вообще отлично! На самом деле 32 бит для большинства задач хватало, а то что больше - ну писали библиотеки. Но вот адресное пространство 32 бит, как-то не очень... 64 бита. Нужно ли 128бит? 256? 512? (Я не про векторные инструкции и не про специализированные аккселераторы крипты, к примеру, а именно про регистры общего назначения).

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

Ну это как с размерами мозга. Каким может быть максимальный объём мозга, чтобы он работал? Так вот, где-то читал статью, что он не может быть слишком большим. Возникают большие задержки итд итп. То-есть, размер мозга оптимален.

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

Так что мне кажется, что тут можно говорить об антропном принципе в оценке сложности. :)

Насчёт Singularity возникли мысли, но уже не буду писать, а то много текста. :)

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-07 16:14:51


hugeping> Это уже не сложность, по-моему, а разный подход к решению проблемы. То-есть, сказать только по вот этой-вот части - нельзя ничего.

А как отделить очень разное концептуальное устройство от оценки сложности. Все равно, что оценивать костюм по пуговицам, как у Райкина.

hugeping> Про Singularity я, к сожалению, ничего не знаю. Очевидно, в этой ОС проблема выполнения недоверенного (нативного) кода как-то решается. Или там вообще нет такого понятия и всё проходит через их язык. Но, тоже решение. Может быть, и нормально. Хоть и не традиционно.

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

hugeping> Так же, есть вещи, которые изменить нельзя. Например, сложная система команд целевого процессора. Ну, взять тот же vliw.

Все еще сложнее. Как сравнивать арифметику натуральных чисел и анализ комплексных функций? Они связаны, но слишком разные. Если процессор не реализует вычисления с плавающей точкой, то это неизбежно сказывается на всем ПО. И как сравнивать ОС для разных архитектур? Можно только специально подобрать для сравнения очень похожие примеры, но это очень частный случай и поэтому не интересно.

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

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

# Re: Эффективность против простоты
std.hugeping
hugeping(ping,1) — vvs
2020-12-07 15:54:52


vvs> Другой пример. Одна ОС реализует аппаратную защиту памяти, а другая полагается для этого на компилятор, как Singularity.

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

Про Singularity я, к сожалению, ничего не знаю. Очевидно, в этой ОС проблема выполнения недоверенного (нативного) кода как-то решается. Или там вообще нет такого понятия и всё проходит через их язык. Но, тоже решение. Может быть, и нормально. Хоть и не традиционно.

Так же, есть вещи, которые изменить нельзя. Например, сложная система команд целевого процессора. Ну, взять тот же vliw.

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

# Re: Эффективность против простоты
std.hugeping
hugeping(ping,1) — vvs
2020-12-07 15:44:15


Да нет, видно там всё по коду.

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

P.S. Я не спорю. Просто делюсь своими наблюдениями. Ты можешь считать их ошибочными, я не против.

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-07 15:40:03


Другой пример. Одна ОС реализует аппаратную защиту памяти, а другая полагается для этого на компилятор, как Singularity.

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-07 15:22:21


vvs>> Комплексность сложно оценить, в отличие от размера. Я вот понятия не имею, что сложнее устроено: солнечная система или электрон?

hugeping> Ну мы же говорили о том, что человек создал. Скажем, сравнительно оценить сложность: ядра Linux, OpenBSD, FreeBSD, HaikuOS и Plan9 вполне себе сравнивается. :)

Не думаю. Как сравнивать, например, маленький, но очень хитроумный алгоритм, использующий глубокие теоретические результаты и огромный, запутанный алгоритм, с большим числом вариантов? Если я понимаю теорию, то я могу сказать, что первый прост, но совсем не тривиален, а второй сложен для понимания, но тривиален по сути. Сразу начнется спор: а что здесь есть комплексность? Честно говоря, мне неохота начинать все по новой.

# Re: Эффективность против простоты
std.hugeping
hugeping(ping,1) — vvs
2020-12-07 14:26:00


vvs> Комплексность сложно оценить, в отличие от размера. Я вот понятия не имею, что сложнее устроено: солнечная система или электрон?

Ну мы же говорили о том, что человек создал. Скажем, сравнительно оценить сложность: ядра Linux, OpenBSD, FreeBSD, HaikuOS и Plan9 вполне себе сравнивается. :)

vvs> Я там вижу две составляющие: логика и эстетика. Опять же, первую оценить относительно просто, в отличие от второй.

Оценить - несложно. Формально доказать - сложно. Но у кого стоит такая цель? У меня - нет такой. :)

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-07 14:22:15


hugeping> В качестве элегантных (и при этом мощных) вещей можно привести: Форт, Лисп.

К Лиспу у меня двойственное отношение. С одной стороны синтаксис и примитивы языка экстремально просты. С другой стороны это привело к тому, что многие конструкции языка превратились во внешние функции, а языка, как единого целого не существует вовсе. Есть бесчисленное множество диалектов для конкретных приложений и когда упоминают Лисп, то, зачастую, имеют в виду какую-то абстрактную идею. Для меня основным здесь кажется то, что влияние Лиспа можно найти всюду, в самых неожиданных местах, но мне самому писать на нем не хочется. В его коде я не ощущаю индивидуальности, хотя он и очень узнаваем. Кстати, в свое время мне пришлось изучать PL/I и там было такое же ощущение какой-то безликости.

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-07 12:40:13


hugeping> Сложность это не просто размер кода, это _комплексность_. Например, сложность ядра Linux высока не столько из-за размера, сколько из-за сложного взаимодействия компонентов. Так что компилятор компилятору -- рознь.

Комплексность сложно оценить, в отличие от размера. Я вот понятия не имею, что сложнее устроено: солнечная система или электрон?

hugeping> Я не специалист в ФП, но мне кажется идеи, которые реализует тот же Haskell сами по себе просты. Но, не буду лезть в область, в которой я нуб.

hugeping> В качестве элегантных (и при этом мощных) вещей можно привести: Форт, Лисп.

Я там вижу две составляющие: логика и эстетика. Опять же, первую оценить относительно просто, в отличие от второй.

P.S. Да, там еще есть изощренность практических алгоритмов, которую тоже оценить трудно.

P.S. Edited: 2020-12-07 12:46:25

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-07 12:26:19


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

# Re: Эффективность против простоты
std.hugeping
hugeping(ping,1) — Andrew Lobanov
2020-12-07 09:11:59


AL> Да. Эти компиляторы очень сложные с инженерной точки зрения. И как и везде это имеет две стороны: они позволяют достаточно простые вещи, но они достаточно сложны.

Сложность это не просто размер кода, это _комплексность_. Например, сложность ядра Linux высока не столько из-за размера, сколько из-за сложного взаимодействия компонентов. Так что компилятор компилятору -- рознь.

Я не специалист в ФП, но мне кажется идеи, которые реализует тот же Haskell сами по себе просты. Но, не буду лезть в область, в которой я нуб.

В качестве элегантных (и при этом мощных) вещей можно привести: Форт, Лисп.

# Re: Эффективность против простоты
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2020-12-07 04:19:20


AL>> Код, который ты приводил, как раз ярко иллюстрирует мою идею. Компилятор сложная технически штука. Очень сложная. Зато она позволяет вот так просто для пользователя писать код.
vvs> Просто для поддержания светской беседы, не относитесь к этому вопросу слишком серьезно. Компилятор с языка, на котором написан этот код, имеет меньше ста тысяч строк кода вместе с комментариями. Напомните мне, пожалуйста, какой размер кода имеют gcc или go? Последний раз когда я смотрел, число строк кода go приближалось уже к миллиону. Да, я знаю, что это сравнение не вполне корректное, но все же. :)

Да. Эти компиляторы очень сложные с инженерной точки зрения. И как и везде это имеет две стороны: они позволяют достаточно простые вещи, но они достаточно сложны.

# Re: Эффективность против простоты
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2020-12-07 04:19:19


vvs> Кстати, я сообразил, что мы еще не доказали, что простота - это свойство. А по-моему - это отношение. Каждый относится к предмету по-разному и видит в нем свою простоту или сложность.

О чём я и говорил изначально :)

vvs> Тут хорошо подойдет известная аналогия: когда именно несколько песчинок превратятся в кучу песка? Где именно граница между простым и сложным? Разве это не указывает на наше индивидуальное отношение?

Сумма простых вещей может быть и сложной. Но сумма сложных вещей сложнее :)

# Re: Эффективность против простоты
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2020-12-07 04:19:18


vvs> Что ж, это интересный пассаж, добавляющий еще одно измерение. Действительно, речь идет об искусстве или о производстве? Искусство дает уникальное творение, а производство массовые копии. Простота производства, безусловно, должна отличаться от простоты искусства. С моим мнением это тоже вполне согласуется.

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

# Re: Эффективность против простоты
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2020-12-07 04:19:17


vvs> Хорошо. Чтобы еще больше всех тут запутать я скажу, что для формального описания поведения вышеупомянутого кода годится лямбда-исчисление, а для императивного кода, даже на языке ассемблера (или C), нужна уже логика разделения, которая ну никак не кажется проще. Следствием является то, что доказать правильность работы ФП в целом проще, чем императивного кода. Что означает, что добиться надежности в первом случае тоже легче.

Всё так.

vvs> Другим следствием будет то, что понять логику работы компилятора неспециалисту, конечно, сложнее, чем программы на языке ассемблера. При том, что существуют формально проверенные компиляторы, где корректность их реализации формально гарантирована. Весь вопрос в том, какая же именно простота тут "истинная"?

А нет истиной простоты. Есть простые технически вещи (то, что я называю инженерной простотой) и простые в использовании вещи (пользовательская простота). Это две крайности, между которыми существует всё, что создал человек, грубо говоря. Тут уж что кому больше нравится и какие стоят цели. Например, для своей мамы я выберу второе, чтобы она могла нажать на кнопку и сидеть в одноклассниках. Для себя я выберу что-то более простое по устройству, но без экстрима. Просто потому, что простые вещи я лучше понимаю, но при этом мне нравится когда не надо особо заморачиваться на предмет написания драйверов, например. А где-то глубоко внутри я просто тоскую по старым машинам, которые и не могли адекватно предоставить простой для пользователя софт и сами были достаточно простыми, чтобы можно было в них лазить паяльником чтобы улучшать.

vvs> Я уже сказал в самом начале, что не собираюсь поднимать флейм. Моя личная точка зрения по этому поводу, что говоря о "простоте" люди обычно сравнивают теплое с мягким и большого смысла такое сравнение не имеет.

Флейма как такового и нет. И я ни в коем случае не ставлю какую-то крайность в абсолют. Просто мне нравятся вещи, которые просто устроены. Почему из этого нужно разжигать флейм и что-либо доказывать мне не совсем понятно :)

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — Andrew Lobanov
2020-12-06 22:58:50


AL> Код, который ты приводил, как раз ярко иллюстрирует мою идею. Компилятор сложная технически штука. Очень сложная. Зато она позволяет вот так просто для пользователя писать код.

Просто для поддержания светской беседы, не относитесь к этому вопросу слишком серьезно. Компилятор с языка, на котором написан этот код, имеет меньше ста тысяч строк кода вместе с комментариями. Напомните мне, пожалуйста, какой размер кода имеют gcc или go? Последний раз когда я смотрел, число строк кода go приближалось уже к миллиону. Да, я знаю, что это сравнение не вполне корректное, но все же. :)

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-06 20:23:22


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

Тут хорошо подойдет известная аналогия: когда именно несколько песчинок превратятся в кучу песка? Где именно граница между простым и сложным? Разве это не указывает на наше индивидуальное отношение?

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-06 20:13:31


Что ж, это интересный пассаж, добавляющий еще одно измерение. Действительно, речь идет об искусстве или о производстве? Искусство дает уникальное творение, а производство массовые копии. Простота производства, безусловно, должна отличаться от простоты искусства. С моим мнением это тоже вполне согласуется.

# Re: Эффективность против простоты
std.hugeping
hugeping(ping,1) — vvs
2020-12-06 19:11:01


Я тоже немного запутаю.

Когда говорили про Plan9, true-grue прислал мне один свой комментарий, который, на мой взгляд, в тему разговора. Особенно там, где про чувства к инструменту.

http://fforum.winglion.ru/viewtopic.php?p=40887&sid=b952e062260f48b8f6b6b45f8e76b3d0#p40887


Далее цитата.

Форт-метод -- метод создания инструментария для решения задач. Каковы же его отличительные стороны? Ориентированность на личность, на кустаря-одиночку, независимого от чужого инструментария. Использующему форт-метод разработчику требуются большие опыт и знания. Ведь он, подобно Родену, изучив "глыбу мрамора" знаний и технологий, отсекает от нее все лишнее для себя, путем тщательного отбора из большого числа возможностей. Аналогия с искусством тут неслучайна, ведь автор не просто создает полезный инструмент, а такой, которому он будет испытывать чувства. Отсюда стремление к элегантности, красоте конструкций, миниатюризации. Его инструмент -- средство индивидуального пользования для решения собственных задач. Поддержка в рабочем состоянии, независимость от чужих технологий -- все это накладывает отпечаток на структуру инструмента. Отсюда требования к простоте и регулярности конструкции. Минимализм и единообразие часто приводят к тому, что одни и те же элементы такого инструментария используются нетривиальным образом для различных целей. Это требует определенного мастерства в освоении, в духе процесса бритья топором или использования надфиля в качестве пилки для ногтей. В целом, форт-метод добавляет к результату яркий отпечаток индивидуальности создателя.

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — Andrew Lobanov
2020-12-06 17:11:12


Хорошо. Чтобы еще больше всех тут запутать я скажу, что для формального описания поведения вышеупомянутого кода годится лямбда-исчисление, а для императивного кода, даже на языке ассемблера (или C), нужна уже логика разделения, которая ну никак не кажется проще. Следствием является то, что доказать правильность работы ФП в целом проще, чем императивного кода. Что означает, что добиться надежности в первом случае тоже легче.

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

Я уже сказал в самом начале, что не собираюсь поднимать флейм. Моя личная точка зрения по этому поводу, что говоря о "простоте" люди обычно сравнивают теплое с мягким и большого смысла такое сравнение не имеет.

# Re: Эффективность против простоты
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2020-12-06 16:49:14


vvs> Хм. На этот раз я вынужден сказать, что ты меня как-то не так понял. А где именно я сказал, что твоя точка зрения - это плохо? Я лишь просто уточнил, что мне такое деление кажется искусственным. Твою точку зрения я прекрасно понял, просто для того, чтобы лично мне узнать, что есть технически простое решение, придется идти к тебе за ответом. Я сам не могу с уверенностью это определить. Вот даже на приведенный мной раньше фрагмент кода вы с Петром дали противоположные ответы. Так кто будет в этом конкретном случае арбитром? Я не против если это будешь именно ты, но это как-то слишком произвольно на мой взгляд, разве нет? :)

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

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — Andrew Lobanov
2020-12-06 14:19:48


Хм. На этот раз я вынужден сказать, что ты меня как-то не так понял. А где именно я сказал, что твоя точка зрения - это плохо? Я лишь просто уточнил, что мне такое деление кажется искусственным. Твою точку зрения я прекрасно понял, просто для того, чтобы лично мне узнать, что есть технически простое решение, придется идти к тебе за ответом. Я сам не могу с уверенностью это определить. Вот даже на приведенный мной раньше фрагмент кода вы с Петром дали противоположные ответы. Так кто будет в этом конкретном случае арбитром? Я не против если это будешь именно ты, но это как-то слишком произвольно на мой взгляд, разве нет? :)
P.S. Edited: 2020-12-06 14:21:51

# Re: Эффективность против простоты
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2020-12-06 14:05:12


AL>> Я взял полярные случаи для наглядности. И делил вещи, а не людей. Ты что-то понял не так.
vvs> Я с большим недоверием отношусь к искусственным идеализациям. В жизни они часто не имеют смысла. Мы тут на эту тему уже не раз копья сломали. Оторвать инженерные критерии от инженеров вряд ли получится, поскольку они не существуют сами по себе в вакууме. Конечно, имеет смысл думать что инженеры стремятся к какому-то идеалу, но как показывает эта же самая дискуссия - он у всех разный.
vvs> P.S. Кстати, подобная идеализация свойственна последователям Платона. Я к ним не отношусь, если что.

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

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — Andrew Lobanov
2020-12-06 12:31:10


AL> Я взял полярные случаи для наглядности. И делил вещи, а не людей. Ты что-то понял не так.

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

P.S. Кстати, подобная идеализация свойственна последователям Платона. Я к ним не отношусь, если что.
P.S. Edited: 2020-12-06 12:34:03

# Re: Эффективность против простоты
std.hugeping
Andrew Lobanov(tavern,1) — vvs
2020-12-06 05:11:30


vvs>>> Тут чувствуется одно противоречие. Программист - он еще и пользователь, зачастую очень ленивый.
hugeping>> А в чём противоречие?
vvs> Это конкретно было адресовано Андрею на черно-белую дихотомию инженеров и пользователей.

Я взял полярные случаи для наглядности. И делил вещи, а не людей. Ты что-то понял не так.

vvs>>> Лично мне больше нравится, когда решение моей задачи я доверяю компилятору.
hugeping>> Сейчас идёт сравнение с ассемблером? Я лично тоже доверяю компилятору. На ассемблере я давно не пишу (хотя сталкиваюсь с ним при отладке). Си -- один из примеров, когда коэффициент красоты (эффективность/сложность) -- очень хороший. Он и создавался как переносимый ассемблер.
vvs> Нет. Вот конкретный пример:
vvs>
vvs> ```
vvs> def fact x :=
vvs> match x with
vvs> | 0 => 1
vvs> | n+1 => (n+1) * fact n
vvs> ```

Код здесь обрамляется ====.

vvs> Это просто? Вроде да. Но это только синтаксический сахар. После развертывания в абстрактный синтаксис это выглядит далеко не просто. Кроме того компилятор генерирует вспомогательный код, который нужен ему, но мне не обязательно понятен. Разве что если я увлекаюсь теорией формальных языков.

Это нифига не просто. Но для пользователя синтаксический сахар как раз и проще.

# Re: Парадокс друга Вигнера
std.hugeping
vvs(ping,12) — hugeping
2020-12-05 22:04:46


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

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

А.С.Пушкин

# Парадокс друга Вигнера
std.hugeping
hugeping(ping,1) — vvs
2020-12-05 21:31:00


Оставлю это здесь.
Ещё один эксперимент, о котором я не знал.

https://naked-science.ru/article/physics/kvantovaya-fizika-dokazala-chto-obektivnoj-realnosti-ne-sushhestvuet

Забавно, что в 2009-м, когда я писал игру "Возвращение квантового кота" я думал использовать этот парадокс для спасения кота. Но решил, что слишком сложно и не правдоподобно. :)

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-05 18:49:44


hugeping> Уравнение прямой — что может быть проще?

hugeping> Ах + Ву + С = 0

Кстати, это хорошая аналогия. Здесь записана формулировка задачи, а не ее решение. Если записать здесь какое-нибудь другое уравнение, например ОТО, то оно будет выглядеть обманчиво просто. А вот его решение может оказаться никому не по зубам. Вот поэтому я и предпочитаю полагаться на компилятор.

# Re: Эффективность против простоты
std.hugeping
vvs(ping,12) — hugeping
2020-12-05 18:21:49


hugeping> То-есть в простом подходе, не плодятся сложные уникальные сущности, но по разному комбинируются простые. Это и есть Unix подход. Только Linux уходит от него всё дальше... Понятно, что когда мы говорим о такой задаче, как обработка/редактирование видео, например, Unix подход может превратиться в ту самую "сложную" формулу. Так что, очевидно, простота работает не везде. Но можно к ней хотя бы стремиться.

Тут фишка в том, что это зависит не от линукса, а от нашего собственного ограниченного понимания проблемы. Что такое топологическое пространство? Специалисту это просто, а остальным - это новая непонятная сущность :)