[>]
Про музыку
ru.humor.14
Andrew Lobanov(tavern,1) — All
2018-05-22 08:57:27
Я жалел своих родителей: я слушал великую музыку, они не понимали ее. Сейчас я жалею своих детей: то, что они слушают, полное говно.
[>]
Про селфи
ru.humor.14
Andrew Lobanov(tavern,1) — All
2018-05-22 08:57:28
Селфи женщины: я симпатичная, и у меня браслетик, и новое платье, и у меня всё классное: выкусите, стервы!
Селфи мужчины: был в лесу, поэтому на фото я в лесу.
[>]
Про развлечения
ru.humor.14
Andrew Lobanov(tavern,1) — All
2018-05-22 08:57:29
Как можно легко и непринуждённо развлечься при знакомстве девушки со своими родителями:
1. Предупреди свою девушку, что твоя мама плохо слышит, поэтому надо громко кричать.
2. Предупреди свою мать, что твоя девушка немного с заскоками.
[>]
Про желания
ru.humor.14
Andrew Lobanov(tavern,1) — All
2018-05-22 08:57:32
Чертовски хочется построить успешную карьеру, получить хорошее образование и добиться всех целей, но, с другой стороны, хочется полежать.
[>]
Про СССР
ru.humor.14
Andrew Lobanov(tavern,1) — All
2019-01-15 13:36:29
В одном фидошном обсуждении привели очень правдаподобную модель логики оголтелых защитников СССР.
1920е - так после революции и гражданской войны же, по этому периоду нельзя судить
1930е - так к войне ж готовились, по этому периоду нельзя судить
1940е - так война жеж, по этому периоду нельзя судить
1950е - так после войны жеж, по этому периоду нельзя судить
1960е - хрущев сука кукурузник тупой все запорол, по этому периоду нельзя судить
1970е - ууу брежнев, маразматик сцуко предал идею, по этому периоду нельзя судить
1980е - ну это уже был не тот союз, что раньше, по этому периоду нельзя судить
[>]
Настоящие программисты не используют Паскаль
ru.humor.14
Andrew Lobanov(tavern,1) — All
2021-02-03 13:48:49
Источник: DATAMATION Jul.?? pp.207-209
----
Ed Post
Wilsonville, Orezon
----
В прошлом, во времена золотой эры ЭВМ было легко отличать мальчика от мужа (иначе их называют "сосунки" и "настоящие мужчины", соответственно). Тогда настоящие мужчины были те, кто понимал в программировании, с сосунки - те, кто не понимал. Настоящий программист легко произносил такие фразы, как "DO 10 I = 1, 10" или "АВОСТ", а все остальные нечто вроде "ЭВМ слишком сложна для меня" и "Я не могу полагаться на ЭВМ - они слишком безличны". Предыдущая работа, B. Feirstein, "Настоящие мужчины не употребляют фруктовый пирог", издание PocketBook, 1982, отмечает, что настоящие мужчины ни на что не полагаются и не боятся быть обезличенными.
Но времена меняются. Сегодня мы живем в мире, в котором маленькие старые дамы могут приобрести компьютеризированную микроволновую печь, 12-летние пацаны могут выбить из колеи настоящих мужчин при игре на ЭВМ в астероиды и в очко и, вообще, любой человек может купить и понять свой собственный персональный компьютер. Настоящий программист в опасности, он может быть заменен студентами высшей школы.
Однако, существует разница между студентом-первокурсником, освоившим на ЭВМ игру в очко и настоящим программистом. Знание этих различий может помочь детям познать к чему стремиться - модель поведения, стереотип отца. Это также поможет сохранить рабочие места для настоящих программистов.
Самый простой способ определить, кто является настоящим программистом - по используемому языку программирования. Настоящие программисты используют Фортран. Сосунки используют Паскаль. Никлауса Вирта, разработчика Паскаля, однажды спросили: "Как вы произносите свою фамилию?". "Вы можете обращаться ко мне по фамилии, произнося ее 'Вирт', или обращаться ко мне по значению, 'Ворт'", - ответил он. [Игра слов : Nicklaus Wirth произносится так же, как английское слово Worth - стоящий, ценный]
Исходя из этой ремарки, любой сразу поймет, что Никлаус Вирт - сосунок. Единственный механизм передачи параметров, принимаемый настоящим программистом - это передача параметров по значению, как это реализовано в компиляторах Фортрана G и H для ЭВМ IBM/370. Настоящим программистам для выполнения работы не нужны абстрактные концепции: для счастья им достаточно перфоратора, компилятора Фортран-IV и пива. Настоящие программисты пишут программы работы со списками, обработки строк, учета ресурсов (если они вообще это делают) и искусственного интеллекта на Фортране.
Если вы не можете выполнить эти работы на Фортране, выполните их на ассемблере. Если же их нельзя выполнить на ассемблере, их не стоит делать вообще.
В последние несколько лет академиков от вычислительной техники вовлекли на стезю структурного программирования. Они утверждают, что программы становятся более понятными, если используются специальные языковые методы и конструкции. Они, конечно, не могут договориться между собой, какие точно конструкции следует использовать, а примеры, иллюстрирующие их точку зрения, всегда помещаются на одной страничке неизвестных журналов. Когда я окончил школу, я считал себя самым лучшим программистом в мире. Я мог написать непобедимую программу игры в крестики-нолики в трехмерном пространстве на пяти различных языках программирования, а также написать программу, состоящую из 1000 строк, которая бы работала. Затем я попал в реальный мир. Моей первой задачей было прочитать и понять фортрановскую программу емкостью 200000 строк, а затем увеличить скорость ее работы в 2 раза. Любой настоящий программист скажет вам, что все структурированное программирование мира не поможет вам решить проблемы вроде этой - решение этой задачи требует настоящего таланта.
Несколько наблюдений о настоящих программистах и структурном программировании:
- настоящие программисты не боятся использовать GOTO;
- настоящие программисты могут без смущения написать цикл DO на пяти страницах;
- настоящие программисты любят арифметические операторы IF, т.к. их использование делает программу более интересной;
- настоящие программисты используют самомодифицирующийся код, особенно в тех случаях, когда это экономит 20 наносекунд в середине очень короткого цикла;
- настоящие программисты не нуждаются в комментариях : текст программы все объясняет;
- поскольку в Фортране отсутствуют структурные операторы IF, REPEAT ... UNTIL или CASE, настоящим программистам не нужно беспокоиться, что они их не используют; кроме того эти операторы можно при необходимости симулировать с помощью присваиваемых GOTO.
В последнее время в прессе муссируются структуры данных. Абстрактные типы данных, структуры, указатели, списки и строки стали популярны в определенных кругах. Вирт, сосунок, написал даже целую книгу ("Алгоритмы + Структуры данных = Программы", Prentice Hall, 1976 [русский перевод - изд. "Мир", 198?]), в которой утверждает, что можно написать программу на базе структур данных, не используя другие способы. Как все настоящие программисты знают, единственной полезной структурой данных является массив. Строки, списки, структуры и наборы - это все разновидности массивов и их можно рассматривать как массивы без усложнения вашего языка программирования. Хуже всего с этими хитрыми типами данных то, что вы должны их описывать, а настоящие языки программирования, как мы все знаем, обладают возможностью неявного задания типа, основанного на первой букве 6-символьного имени переменной.
В какой операционной системе работает настоящий программист? В CP/M? Боже сохрани! Помимо всего прочего, это в основном игрушка, а не операционная система. Даже маленькие старые дамы и абитуриенты могут работать в CP/M и понять ее.
UNIX, конечно, более сложная система - типичный последователь UNIX'а никогда не может запомнить, как на этой неделе называется команда PRINT - но когда он наконец доберется до нее, UNIX становится восхитительной видеоигрой. Люди не делают серьезных работ в системе UNIX, они рассылают шутки по всему миру по USENET или пишут приключенческие романы и научные статьи.
Нет, настоящий программист использует OS/370. Хороший программист может найти и понять описание только что полученного сообщения об ошибке IJK305I в руководстве по JSL. По-настоящему знаменитый программист может найти ошибки в распечатке 6-мегабайтной области памяти, не используя калькулятор шестнадцатеричной системы счисления.
OS/370 по настоящему удивительная система. В ней можно уничтожить работы стоимостью несколько человеко-дней с помощью одного неправильно помещенного пробела, так-что штат программистов всегда должен быть на чеку. Наилучший способ общения с системой - через перфоратор. Некоторые утверждают, что в OS/370 существует система разделения времени, но после внимательного изучения я пришел к выводу, что они ошибаются.
Какие инструменты использует настоящий программист в своей работе? Теоретически, настоящий программист может запускать свои программы, набирая их на передней панели ЭВМ. В добрые старые времена, когда ЭВМ имели передние панели, этот метод использовался время от времени. Типичный настоящий программист знал наизусть начальный загрузчик в шестнадцатеричной системе и восстанавливал его с пульта, когда он разрушался его программой. Более того, память была памятью - ее содержимое не пропадало при выключении питания. В настоящее время память либо забывает факты, когда вы этого не хотите, либо помнит о вещах, которые давно следовало бы забыть. Ходит легенда, что Seymour Cray, изобретатель супер-ЭВМ Cray-1 и большинства ЭВМ фирмы Control Data, ввел с пульта наизусть первую операционную систему ЭВМ CDC 7600 при первом включении этой ЭВМ. Конечно, Cray - настоящий программист.
Одним из моих любимых настоящих программистов был Джим - системный программист фирмы Texas Instruments. Однажды, ему по междугородному телефону позвонил пользователь, чья система разрушилась в процессе очень важной работы. Джим исправил систему по телефону, заставляя пользователя набирать на передней панели ЭВМ команды обращения к диску, исправлять системные таблицы в шестнадцатеричной системе и считывать ему по телефону содержимое регистров. Мораль этой истории: хотя настоящий программист обычно включает в набор своих инструментов перфоратор и АЦПУ, он может в экстренных ситуациях обойтись передней панелью ЭВМ и телефоном.
В некоторых фирмах редактирование текстов программ больше не представляет собой очередь из 10 инженеров, ожидающих освобождения перфоратора 029. Более того, здание где я работал не содержит вообще ни одного перфоратора. Настоящий программист в таких условиях должен выполнять работу с помощью текстового редактора. Большинство систем предлагают на выбор несколько текстовых редакторов, но настоящий программист должен быть очень осторожен в выборе, отражающего его индивидуальность. Многие думают, что наилучшие текстовые редакторы в мире написаны в исследовательском центре фирмы Xerox в Palo Alto для работы с ЭВМ марок Alto и Dorado. К сожалению, ни один настоящий программист не будет работать на ЭВМ с операционной системой под названием Smalltalk (короткий разговор) и конечно же не будет беседовать с ЭВМ с помощью "мышки".
Некоторые из концепций этих редакторов фирмы Xerox были реализованы в редакторах, работающих в операционных системах с более солидными названиями, такими как EMACS и VI. Дело в том, что настоящий программист считает плохим следующий принцип редактора: "То, что вы видите, то вы и получите". Настоящий программист желает редактор с принципом: "Вы это просили, вот вам"; т.е. редактор, который был бы сложным, шифрованным, мощным, непрощающим и опасным. Редактор TECO - чтобы быть точным.
Было замечено, что последовательность команд TECO более напоминает помехи в линии передачи, чем читаемый текст. Одна из самых развлекательных игр с TECO - напечатать в качестве командной строки свою фамилию и попытаться догадаться, что она сделает. Точно так же любая случайная опечатка при работе с TECO может разрушить вашу программу, или, хуже того, внести неуловимые и мистические ошибки в уже работающую программу.
Из-за этого настоящие программисты неохотно редактируют уже работающие программы. Они считают более простым непосредственно латать двоичный объектный код, используя прекрасную программу под названием SuperZap (или ее эквивалент на не-IBM машинах). Этот метод настолько хорош, что многие программы, работающие на ЭВМ фирмы ИБМ, не имеют ничего общего со своим собственным текстом на Фортране. В большом количестве случаев первоначальный символьный текст программы вообще не существует. Когда наступает время подправить такого рода программу, никакой администратор даже не думает послать на эту работу кого-либо, кроме настоящего программиста - никакой сосунок (структурный программист) не будут знать даже с чего начать. Это называется защита от несанкционированного доступа.
Некоторые не используемые настоящим программистом средства программирования включают:
- препроцессоры Фортрана, такие как Mortran и Ratfor; эти кулинарные рецепты в программировании хороши для выпечки фруктового пирога;
- отладчики для работы с текстом программы; настоящие программисты могут свободно читать распечатку оперативной памяти;
- компиляторы с проверкой границ массива; эти компиляторы душат творчество, запрещая наиболее интересные варианты оператора EQUIVALENCE и препятствуют модификации операционной системы с помощью отрицательных индексов массивов. Кроме всего прочего, контроль границ массива не эффективен;
- системы сопровождения и архивации символьных текстов программ; настоящий программист хранит текст своих программ в закрытом на замок ящике (на перфокартах), т.к. владелец не может оставить свои программы без охраны.
Где же работает типичный настоящий программист? Какие программы достойны таких талантливых индивидуумов? Вы можете быть уверены, что настоящий программист не умрет за написанием программы "Зарплата" на Коболе или сортируя список почтовых отправлений журнала People. Настоящий программист желает задачи с важностью землетрясения.
Настоящие программисты работают на национальную лабораторию в Лос-Аламосе, создавая программы на супер ЭВМ Cray-1, моделирующие атомную бомбу. Они так же работают на Агентство Национальной Безопасности, расшифровывая передачи русских.
В большой степени из-за усилий тысяч настоящих программистов, работающих в NASA, наши ребята добрались до Луны и вернулись обратно, опередив космонавтов. ЭВМ в космическом корабле "Шатл" были запрограммированы настоящими программистами, и эти же истинные профессионалы работают на фирму Боинг, создавая операционные системы для крылатых ракет.
Одна из приводящих в благоговейный трепет работ настоящих программистов выполнена в Лаборатории реактивного движения, Калифорния. Многие знают всю операционную систему космических кораблей "Пионер" и "Вояджер" наизусть. С помощью симбиоза больших наземных фортрановских программ и маленьких бортовых ассемблерных, они могут совершать невероятные чудеса в навигации и импровизации - такие, как попасть в окно шириной 10 км в кольце Сатурна после 6-ти лет полета в космосе и починить или обойти неисправные сенсорные платформы, радиопередатчики или аккумуляторы. Утверждают, что один настоящий программист умудрился засунуть программу распознавания образов в несколько сот байт неиспользованной памяти корабля "Вояджер", которая осуществляла поиск, обнаружила и сфотографировала новую луну Юпитера.
Одна из планируемых задач для корабля "Галилей" - использовать притяжение Марса на траектории полета к Юпитеру. Эта траектория проходит в 80 +/- 3 км от поверхности Марса. Никто не собирается доверить паскалевской программе или программисту такую навигационную задачу.
Многие из настоящих программистов всего мира работают на правительство США, в основном в Министерстве Обороны. Так и должно быть. Однако, недавно на небосклоне настоящих программистов появилась черная туча. Кажется, что кто-то из высокопоставленных сосунков в Министерстве Обороны решил, что все оборонные программы должны быть написаны на некоем великом унифицированном языке ADA. Некоторое время казалось, что ADA была предназначена стать языком, который шел вразрез со всеми правилами настоящего программирования. Это язык со структурой, типами данных, строгим синтаксисом и точками с запятой. Короче, он был разработан для сдерживания творчества типичного настоящего программиста. К счастью, язык одобряемый Министерством Обороны, обладает достаточно интересными свойствами, которые делают его приемлемым - он невероятно сложен, включает в себя способы порчи операционной системы и перераспределения памяти, и Эдгар Дейкстра (Edsgar Dijkstra) не любит его. Дейкстре, как вы должны знать, автору краеугольной работы по методологии программирования "GOTO - считать вредными", аплодируют программисты на Паскале и подобные им сосунки. Да и потом, закоренелый настоящий программист может написать фортрановскую программу на любом языке.
Настоящий программист может пойти на компромисс со своими принципами и работать над вещами немного более тривиальными, чем распад жизни, при условии, что здесь достаточно платят. Например, существует несколько настоящих программистов, разрабатывающих видео-игры в Atari. Но они сами в игры не играют. Настоящий программист знает, как выиграть у машины, и в этом нет пряного удовольствия. Каждый работающий в LucasFilm является настоящим программистом, потому, что нужно быть сумасшедшим, чтобы отвергнуть деньги 50-ти миллионов поклонников Звездных войн (Star Wars).
Доля настоящих программистов, занятых машинной графикой, несколько ниже нормы в основном потому, что никто пока не нашел ей применения. С другой сотроны, вся машинная графика выполнена на Фортране, так что существует определенное число людей, занимающихся графикой для того, чтобы избежать программирования на Коболе.
В общем случае настоящий программист развлекается так же, как и работает - с помощью ЭВМ. Он не перестает удивляться тому, что его работодатель платит ему за то, что он все равно бы делал для развлечения, хотя он достаточно осторожен, чтобы высказать это мнение вслух. Иногда настоящий программист выходит из конторы, чтобы глотнуть свежего воздуха или кружечку-другую пива. Существует несколько признаков, по которым можно узнать настоящего программиста за пределами машинного зала :
- на вечеринке настоящие программисты это те, кто сидит в углу, обсуждая защиту операционных систем и как ее обойти;
- на футбольном матче настоящий программист сравнивает ход игры с "проигровками", распечатанными на фальцованной 11-или 14-дюймовой бумаге;
- на пляже настоящий программист рисует блок-схемы на песке;
- настоящий программист ходит в диско-клуб, чтобы посмотреть мигание лампочек;
- на похоронах настоящий программист изрекает : "Бедный Джордж. А ведь он почти заставил работать программу сортировки, когда его хватил инсульт";
- в бакалейном магазине настоящий программист настаивает на собственноручной проверке банок на лазерном аппарате, т.к. он не верит, что операторы могут правильно отперфорировать данные с первого раза.
В каких условиях лучше всего работается настоящему программисту? Это очень важный вопрос для начальников настоящих программистов. Учитывая высокую стоимость содержания одного такого в штате, лучше создать ему или ей оптимальные условия.
Типичный настоящий программист живет перед дисплеем ЭВМ. Вокруг этого дисплея расположены листинги программ, над которыми он когда-либо работал. Они складированы в кучи приблизительно в хронологическом порядке на каждой плоской поверхности конторы. Вы так же обнаружите полдюжины, или около того, наполовину выпитых чашек с холодным кофе. Иногда в кофе можно обнаружить плавающие "хабарики" сигарет. В некоторых случаях в чашках находится выжатый апельсин. И только в тех случаях, когда программист не очень хорош, вы увидите экземпляры руководства OS JSL и принципов работы, открытых на особо интересных страницах. Приклеенный клейкой лентой, на стене висит распечатанный на АЦПУ календарь с собачкой Снуппи за 1969 год. На полу разбросаны обертки от хлеба с сыром и земляными орехами (такого, который становится черствым уже в пекарне, так что не может стать хуже в торговых автоматах). И, наконец, в верхнем левом ящике стола, под коробочкой Oreos, находится линейка-шаблон для вычерчивания блок-схем, оставленная предыдущим владельцем стола. Настоящие программисты пишут программы, а не документацию, которую они оставляют штату сопровождения.
Настоящий программист может работать по 30, 40 и даже 50 часов непрерывно, под интенсивным нажимом. На самом деле, он и предпочитает так работать. Плохое время отклика не беспокоит настоящего программиста; он получает возможность вздремнуть между трансляциями. Если график выполнения работы не очень жесткий, то настоящий программист предпочитает делать свою жизнь более захватывающей, работая первые 9 недель над маленькой, но интересной частью проблемы. Затем, он заканчивает выполнение всей остальной части за 2 или 3 50-часовых марафона. Это не только впечатляет начальника, но и создает удобное оправдание не делать документацию. В общем случае, ни один настоящий программист не работает с 9 до 5, за исключением тех, кто работает в ночную смену. Настоящие программисты не носят галстуков. Настоящие программисты приходят на работу вовремя - к обеду. Настоящий программист может знать, а может и не знать имя своей супруги. Он, однако, знает наизусть таблицу ASCII (или EBCDIC) символов. Настоящие программисты не умеют готовить. Бакалейные магазины не часто открыты в 3 часа ночи, так что они должны уметь выживать на печенье и кофе.
Заглядывая в будущее, некоторые настоящие программисты считают, что новейшее поколение программистов имеет не такие же взгляды на жизнь, как их старшие товарищи. Многие из них никогда не видели передней панели ЭВМ. Едва-ли кто-либо из выпускников в наши дни может производить вычисления в шестнадцатеричной системе без калькулятора. Сегодняшние выпускники колледжей слабы - они защищены от реальностей жизни символьными отладчиками, редакторами текстов, которые подсчитывают скобки, и лояльными к пользователю операционными системами. Хуже того, некоторые из этих патентованных ученых умудрились "защититься" без изучения Фортрана! Неужели нам предписано свыше стать отраслью фанатиков UNIX'а и паскалевских программистов?
Из собственного опыта, я думаю, можно смело сказать, что будущее прекрасно для настоящих программистов. Ни OS/370, ни Фортран не высказывают ни каких признаков отмирания, несмотря на усилия программистов на Паскале. Даже такие изощренные уловки, как добавление конструкций структурного программирования в Фортран, провалились. Да, конечно, некоторые изготовители ЭВМ выпустили компиляторы Фортрана-77, но каждый из них оставил возможность перейти в режим компилятора Фортрана-66 с помощью удаления одной перфокарты - чтобы компилировать циклы DO как предписано богом.
Даже UNIX может быть не так уж плох для настоящих программистов, как в прошлом. Последняя реализация UNIX'а обладает потенциальными возможностями, ценными для любого настоящего программиста. Она имеет два различных и слегка несовместимых пользовательских интерфейса, аркан и сложный драйвер терминала, и виртуальную память. Если пренебречь тем, что он структурный, то даже программирование на языке "C" может быть по достоинству оценено настоящим программистом. В конце концов, в нем нет проверки типов, имена переменных имеют 7 (10?, 8?) символов в длину и введен полезный тип данных "указатель" (pointer). Получается, как будто соединены воедино лучшие части языка Фортран и Ассемблера, не говоря уже о более творческих применениях оператора #DEFINE.
Нет, будущее не так уж и мрачно. В последние несколько лет даже популярная пресса сообщала о новом урожае блестящих фанатиков, выпущенных из таких мест, как Стенфорд и Массачусетский Технологический Институт, в реальный мир. По всему видно, что дух настоящего программирования живет в этих молодых юношах и девушках. Пока существуют плохо поставленные задачи, странные ошибки и нереалистические расписания машинного времени, будут находится настоящие программисты, желающие взять на себя и решить проблему, оставив документацию на потом.
Да здравствует Фортран!
Перевод : Пяткин А.С. -- Ленинград
[>]
Eternal Flame
ru.humor.14
Andrew Lobanov(tavern,1) — All
2023-05-22 20:29:16
by Bob Kanefsky and Julia Ecklar
I was taught assembler in my second year of school.
It's kinda like construction work with a toothpick for a tool.
So when I made my senior year, I threw my code away,
And learned the way to program that I still prefer today.
Now, some folks on the Internet put their faith in C++.
They swear that it's so powerful, it's what God used for us.
And maybe it lets mortals dredge their objects from the C.
But I think that explains why only God can make a tree.
For God wrote in Lisp code when he filled the leaves with green.
The fractal flowers and recursive roots: the most lovely hack I've seen.
And when I ponder snowflakes, never finding two the same,
I know God likes a language with its own four-letter name.
Now, I've used a SUN under Unix, so I've seen what C can hold.
I've surfed for Perls, found what Fortran's for, got that Java stuff down cold.
Though the chance that I'd write COBOL code is a SNOBOL's chance in Hell.
And I basically hate hieroglyphs, so I won't use APL.
Now, God must know all these languages, and a few I haven't named.
But the Lord made sure, when each sparrow falls, that its flesh will be reclaimed.
And the Lord could not count grains of sand with a 32-bit word.
Who knows where we would go to if Lisp weren't what he preferred?
And God wrote in Lisp code every creature great and small.
Don't search the disk drive for man.c, when the listing's on the wall.
And when I watch the lightning burn unbelievers to a crisp,
I know God had six days to work. So he wrote it all in Lisp.
Yes, God had a deadline. So he wrote it all in Lisp.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — iiii
2024-10-14 12:53:58
iiii> С исторической ценностью ничего не случится, потому что оригинальные сообщения никуда не денутся. Вообще, смысл цифровых эх был в том, что они периодически отправляются в архив. А проблема в том, что сейчас такого архива нет.
Когда были цифровой постфикс эх, такого архива тоже не было. Циферки не влияют на наличие архива.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — iiii
2024-10-14 12:54:05
iiii> ещё неплохо бы возродить идею перекатываемых болталок ни о чём, а то сейчас только idec.talks живая. я у себя на станции потом сделаю talks.24
Зачем их перекатывать? Чтобы что?
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-14 12:54:09
shaos> ИМХО болталка это зло ибо болталка ни о чём очень быстро превращается в болталку о чём-нибудь конкретном, на что у людей есть разные взгляды, что может триггернуть кого-нибудь и затем начинается взаимные метания какашками, обзывания, мат, а также обещание найти и покалечить собеседника (я знаю о чём говорю т.к. админю phpBB форум более двух десятков лет)...
Все беды от общения. Предлагаю вообще запретить общение в сети, потому что у двух человек может не совпасть мнение по любому поводу и они могут развести срач.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-14 12:54:12
shaos> ну последние годы это не так - если посмотреть внутрь pipe.2032, то можно обнаружить, что в 2024 году там ничего небыло, а в 2023 было 4 чтоли темы - и всё...
По сравнению с другим эхами это был трафик.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-14 13:02:02
shaos> Понятно - спасибо за развёрнутый ответ! :)
shaos> В официальных доках нету ничего ни про кольца, ни про zlib, но я встречал обрывки обсуждений в архивных эхах - надо будет всё перечитать.
Потому что не было никаких колец никогда. Ну и zlib тоже использовался, видимо, где-то на заре до 2014 года.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-14 13:02:06
shaos> Ну изначально формат описателя ноды в JSON предложил Лобанов ( см. ii://WxnDvQ31oreCIUc6p0K7 ) - я подумал, что идея здравая и решил туда же добавить инфу по конкретике фетча (урлы и список забираемых эх для каждой ноды) - просто там данные разношёрстные (и древовидные) и в plaintext будет как-то некрасиво (я пробовал) и потом в работе самой станции оно как бы не участвует (ну разве что если фетчи будут настраиваться по этому описателю) и по сути оно нужно лишь для выкачивания внешней программой, которая периодически будет строить актуальную топологию сети...
Я просто сделал такой формат, который проще преобразовать в граф. Но делать это частью стандарта не вижу смысла. А делать расширение стандарта и подавно. Превратимся в XMPP на минималках :)
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — iiii
2024-10-15 10:28:50
iiii> Многие проблемы сети удалось избежать благодаря малой распостранённости :)
Некоторые удалось решить, когда начали править стандарт.
iiii> Формально кольца были, когда я закрывал свою станцию, мы тестили что делать в этом случае.
Формально, тогда просто выпал один узел. Колец всё ещё не было.
iiii> А что касательно архивов - в этом и был изначальный смысл. Все пользователи рабоют с одной версией эхи, с актуальной.
И каждый сидит и правит конфиги ради ничего.
iiii> Чтобы юзер при подключении не тянул архив за много лет. Чтобы тематическая станция тоже не тянула такой архив.
Он и сейчас может тянуть хоть одно последнее сообщение и начинать общение с этого.
iiii> Я вот стянул 2000 с лишним сообщений idec.talks, но они мне не нужны.
Если не нужны, то зачем ты их стянул?
iiii> Инконсистетные эхи мне не нравятся, у всех она разная, а потом выяснится что полной нет вообще ни у кого :)
У всех разные архивы эх, а потом выяснится, что полного архива нет вообще ни у кого. Та же фигня, но в профиль.
iiii> Изначальная задумка, что все работают с одной и той же версией эхи
То есть то, к чему мы в итоге и пришли.
iiii> и у всех она одинаковая, поэтому не должна быть большой.
Смысла в этом мало.
iiii> Хочет юзер архив, пусть выкачивает архив, хоть частично, хоть весь.
Всё как сейчас.
iiii> Эха должна быть целостная, и у всех, и у нодов и у пойнтов одинаковая, пусть может быть разный порядок сообщений.
Кому должна? По какой причине?
iiii> И все работают только с актуальной версией.
То, что мы имеем сейчас.
iiii> Вот я не хочу тянуть несколько тысяч сообщений pipe.2032.
Тебя никто не заставляет.
iiii> Это архивные сообщения и их место в архиве.
Архивные эхи - это пережиток прошлого.
iiii> Я создам im.24, а там кто хочет, пусть её забирает.
Каждый раз, когда Рома вспоминает про нас, он создаёт новые эхи, которые успешно бросает, как и сеть. Смысл в этих обрезках эх никакого.
iiii> Проблема в том, что юзеров мало и архивов тоже мало и они все успели поисчезать.
Стопятьсот болталок, из которых живая одна, не решает эту проблему. Не усугубляет, но и не решает.
iiii> Вообще, сеть имеет потенциал, и чем больше в мире блокировок, тем больший, если появится популярность, то надо использовать дробление эх, нормальное их архивирование
Чтобы уж точно никто никогда ничего не нашёл среди сотен одинаковых эх с разным контентом.
iiii> и нормальный доступ к контенту.
Он уже есть.
iiii> Для малотрафиковых эх это всё, конечно, не нужно, и для сети с 5 пользователями - тоже :)
Вот пока полтора землекопа пользуются сетью, все эти игры с перекатыванием эх работают. А если сеть станет большой, то транзитные узлы начнут забивать на перекаты, в итоге начнётся фрагментация и придётся вводить полиси и вменять сисопам обязанности. Для этого у нас фидонет есть. Там как раз всё зарегулировано.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — doesnm
2024-10-15 14:00:27
AL>> У всех разные архивы эх, а потом выяснится, что полного архива нет вообще ни у кого. Та же фигня, но в профиль.
doesnm> А можно брать часть сообщений с одной ноды, а часть с другой?
Можно.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — hugeping
2024-10-16 08:48:46
Iiii>>> Чтобы не было больших эх. Im.14@@ каждый месяц по несколько тысяч сообщений собирали.
AL>> Размер эхи влияет ни на что.
hugeping> При использовании idec расширений. Если же говорить об ii, то придётся всегда синкать все сообщения. Так что тут смысл есть.
У нас эхотаг какой? Не ii.talks, а idec.talks же.
hugeping> Ну и в теории, если реализация простенькая - большой размер базы может сильно нагружать. Но вот после введения расширений idec которые позволяют сделать адаптивный фетч (как я сделал в ii-go), вопрос по поводу "текучести" эх как часть стандарта - уже не так очевиден.
Забирай что хочешь откуда хочешь и как хочешь. Никаких ограничений нет.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — iiii
2024-10-16 08:48:46
>> И каждый сидит и правит конфиги ради ничего.
iiii> это можно автоматизировать. но я говорю, что такая была изначальная идея.
Изначально был ii. Ты прямым текстом писал, что возможно на основе ii будет другая технология с другим названием. Мы находимся здесь.
>> У всех разные архивы эх, а потом выяснится, что полного архива нет вообще ни у кого. Та же фигня, но в профиль.
iiii> подожди, почему у всех разные архивы эх?
Потому же, почему ты не хочешь тянуть большие эхи. Зачем мне тянуть старые сообщения, если я не хочу? Да и просто могу в любой момент грохнуть архивные эхи, чтобы почистить место.
>> То есть то, к чему мы в итоге и пришли.
iiii> нет, сейчас нет версий, есть только эха, которая может и 10 лет тянуться. одна эха на все времена.
Версии не решают озвученных проблем. Расширенный u/e решает.
>> Всё как сейчас.
iiii> не совсем. во-первых, по дефолту качается всё, во вторых эха становится инконсистентной. в эхах с годами всё чётко, за какие года хочешь выкачивать, за такие и выкачивай, там всё понятно и однозначно.
По умолчанию мой фетчер качает далеко не всё. Чтобы цезий клонировал эху, надо конкретно указать ему, что клонировать. Инконсистентность эхи будет и в твоём случае. Захочу и засуну половину сообщений в blacklist и прощай консистентность.
>> Архивные эхи - это пережиток прошлого.
iiii> архивные эхи - это смысл сети. что сообщения сохраняются навсегда. архив должен был стать основной частью сети. жаль, у меня не было возможности всем этим заниматься, я бы хранил архив.
Зачем качать архивные эхи? Чем это отличается от выкачивания большой эхи?
>> Стопятьсот болталок, из которых живая одна, не решает эту проблему. Не усугубляет, но и не решает.
iiii> так и должно быть - одна болталка живая, остальные архивные.
Ну и выходит, что имеет смысл хранить только последнюю, а архивные удалять за ненадобностью.
>> А если сеть станет большой, то транзитные узлы начнут забивать на перекаты, в итоге начнётся фрагментация и придётся вводить полиси и вменять сисопам обязанности.
iiii> фрагментация эх куда большее зло. а так этот процесс можно автоматизировать. и полиси в любом случае нужно, как минимум - некий консенсус
Мы к нему не придём. Ты хочешь костыли, мы хотим спокойного общения.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — iiii
2024-10-16 08:48:46
iiii> Мне не нравится сама идея инконсистентных эх. В изначальной задумке любой пойнт в случае чего мог стать станцией и раздавать эхи дальше, поэтому они изначально и задумывались компактными.
Раздача десяти эх по 1000 сообщений и раздача одной эхи по 10000 сообщений ничем не отличается. Либо мы выпиливаем и не гоняем архив, либо гоняем всё. Ты уже озвучил, что гонять надо в любом случае всё.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — iiii
2024-10-16 11:45:54
>> Ну и выходит, что имеет смысл хранить только последнюю, а архивные удалять за ненадобностью.
iiii> Маленькие станции и пойнты - да. Но архив в любом случае должен быть. Вон кто то архив old.pc спас
Маленькие станции и поинты могут хранить лишь часть одной эхи. От этого ничего не меняется.
[>]
Re: Некорректные сообщения!
idec.talks
Andrew Lobanov(tavern,1) — iiii
2024-10-17 21:34:51
iiii> Мне не нравится, что потерялась изначальная идея - что написанные сообщения никуда не пропадают.
Этого просто не было нигде по факту. Изначально тоже была анархия, но с ручным трудом.
iiii> Да, часть архива удалось восстановить, но некоторые эхи я бы ещё почитал - случайно заметил что ru.humor.14 сохранился.
Так это живая эха. Не архивная.
iiii> Смысл был маленькие эхи и глобальные дублирующиеся архивы - щас нет ни того ни другого.
Возможно только первое. Второе не будет работать.
iiii> Идея что на ноде не полная эха мне не нравится - хотя у меня у самого rss-эхи урезанные, но содержимое оттуда потерять не жалко :)
Но тебе нравится, что на ноде не все эхи. Я правильно понимаю?
[>]
Re: First test
idec.talks
Andrew Lobanov(tavern,1) — revoltech
2024-10-23 10:28:08
revoltech> Настолько дружеского, что действует презумпция виновности по IP?
А тебя в чём-то обвиняют? Просто появился новый поинт, от него пошёл немного мусорный трафик. С учётом предыдущего опыта вредителей из Европы, есть повод напрячься немного.
[>]
Re: ловите теперь спам и набеги :)
idec.talks
Andrew Lobanov(tavern,1) — revoltech
2024-10-23 10:28:08
revoltech> Нет, блин, это страшный спамбот. Ну капец, секрет Полишинеля.
С разбегу если вспоминать, то из трёх случаев, ты первый не спамбот. Может, и больше было, но я помню только два набега на ping.
[>]
Re: Полуневдимые эхи
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-24 11:42:21
shaos> Я знаю изначально была (и есть) возможность создавать скрытые эхи, которые не были видны через веб-интерфейс, не фигурировали в list.txt, но тем не менее их можно забирать по имени и даже добавлять вручную в свою конфигурацию веб-странички. А я вот у себя хочу запретить совсем скрытые эхи - типа всё должно быть перечислено в list.txt и видно программе клиенту, однако я думаю сделать некоторые эхи невидимыми через веб-интерфейс (пока юзер не залогинится своим паролем), но полностью видимыми через интерфейс поинта (и фетчинг) - в основном это для того, чтобы поисковики и всякие ай-боты их не читали (нынче мало кто обращает внимание на robots.txt поэтому если прятать, то надо прятать глубоко) - например тот же bot.slashdot и какие-то другие эхи построенные из RSS-фидов (а то мало ли что). Кому-то кроме меня это могло бы быть полезным?
Фишка в том, что любой поинт может создать эху, просто отправив сообщение в несуществующую. Ты эту фичу хочешь убрать?
shaos> Ещё один скользский момент - когда отцы-основатели добавляли RSS-эхи в ii/IDEC, то подразумевалось что эти эхи будут read-only или допускалось наличие возможности всенародного комментирования? В этом случае ведь нужен фетчинг в обе стороны...
Всегда можно договориться с сисопом узла.
[>]
Re: Полуневдимые эхи
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-24 14:51:57
>> Да, я рассчитывал на комментарии прямо внутри сети. Вплоть до обратного постинга.
shaos> Ну тогда вариант "комментировать существующие записи" очень даже имеет право на жизнь :)
shaos> Надо придумать простой способ указания прав доступа к эхам - типа
shaos> - кто может создавать сообщения (список поинтов либо все);
shaos> - кто может комментировать уже существующие сообщения (список поинтов либо все).
shaos> Возможно списки поинтов надо оформить в группы, чтобы у разных эх не поинтов перечислять, а группы (и типа будет группа any которая означает кто угодно и группа local включающая всех поинтов ноды).
shaos> Если какой-то старый узел пытается добавить сообщение (не ответ) в эху где кто угодно может только комментировать, то узел будет игнорировать такое сообщение. Возможно ещё надо будет явно запрещать отдавать локальные эхи - типа при попытке их зафетчить будет возвращаться пустота...
Может, вам проще взять phpbb? Зачем портить такую замечательную и простую вещь, как ii/idec?
[>]
Re: Полуневдимые эхи
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-24 15:30:25
>> Фишка в том, что любой поинт может создать эху, просто отправив сообщение в несуществующую. Ты эту фичу хочешь убрать?
shaos> На своем узле - да, хочу чтобы этой фичи небыло (а она вообще на ii-php была?)
Никакой свободы :)
Не знаю была или нет. Для того, чтобы её не было, нужно писать дополнительный код, который по идее вообще вредный, так как удобную фишку убирает.
[>]
Re: Полуневдимые эхи
idec.talks
Andrew Lobanov(tavern,1) — hugeping
2024-10-24 15:30:26
revoltech>> Зачем её убирать, в принципе? Всё равно скрытые эхи в общем списке не видны. Неплохая же блог-платформа выходит. И да, мне как раз эта идея в изначальной документации понравилась тоже.
hugeping> Я могу сказать зачем я её убрал.
hugeping> 1) Легко атаковать. Генерится кучу сообщений с левыми эхами и забиваем базу. При этом админ этого не видит. А если видит, то получается "личные сообщения" перестают быть личными.
Это не личная переписка. Это эха, которой нет в списке. Админ должен видеть всё. Если же ты не видишь личную переписку, то как ты можешь гарантировать, что в ней не договариваются о продаже детей для работы на кокаиновых плантациях? А нагенерировать мусорного контента я тебе на баше и без скрытоэх могу гигабайты за несколько минут.
hugeping> 2) С точки зрения соблюдения законов. Я никогда не позиционировал свою ноду как "анархию". Ответственность за контент несёт админ. Если выясняется, что станция используется, например, для торговли в даркнете, то.... В общем, лучше пусть всё будет открыто и прозрачно. Фидо, кстати, тоже не было "анархией". Скорее наоборот.
Так это не анархия. Это свобода. Не надо путать одно с другим :)
[>]
Re: Мея видо?
idec.talks
Andrew Lobanov(tavern,1) — revoltech
2024-10-23 12:43:30
revoltech> Тестируем многострочный пост, как я бы его обычно писал в виме до того, как
revoltech> допилю GUI-клиента.
revoltech> Если всё нормально, то сегодня или на днях сделаю вообще длиннопост о том,
revoltech> что покамест думаю об этой сети и её перспективах.
revoltech> И да, спасибо shaos за доступ, будем тестить в idec.test дальше.
ВИД О. Только откуда-то лишние переводы строки лезут.
[forwarded from idec.test]
[>]
Re: Мея видо?
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-23 15:01:24
shaos> Ну может так задумано? Типа пустая строка между абзацами?…
Я про переносы внутри абзаца.
[forwarded from idec.test]
[>]
Re: Мея видо?
idec.talks
Andrew Lobanov(tavern,1) — revoltech
2024-10-24 09:03:29
revoltech> А, да, так тоже задумано. Держу строку в пределах 80 символов. Не автоматом, вручную.
Это чтобы твои сообщения было неудобно читать на мобильных устройствах и в узких окнах или зачем?
[forwarded from idec.test]
[>]
Re: Мея видо?
idec.talks
Andrew Lobanov(tavern,1) — revoltech
2024-10-24 12:27:54
revoltech> Насчёт tii/tiix, как и насчёт ii вообще, в понедельник свежий псто в гофер выкачу. Уже точно есть что сказать. В idec.talks тоже что-то длиннотекстовое на днях появится, думаю.
revoltech> А так да, я давно уже свой софт в public domain выкладываю, мне ограничения ни с одной из сторон (как копирайта, так и копилефта) не импонируют. Ну и Tcl/Tk, особенно начиная с 8.6, настолько хорош, что позволяет в довольно ограниченные сроки пилить вещи типа tiix и BFG. На sqlite3 мигрировать, конечно, не хотелось, но пришлось: некоторые ноды отдают сообщения не по порядку их фактической публикации (видимо, смёржены позже), поэтому, чтоб не сортировать на лету, пришлось сортировать уже скулайтом при выводе.
А потом с дальней станции прилетает сообщение полугодовой давности :)
[forwarded from idec.test]
[>]
Re: Мея видо?
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-24 12:27:55
>> некоторые ноды отдают сообщения не по порядку их фактической публикации
shaos> да - есть такое дело
shaos> я себе что забираю кучно потом пересортирую вручную, если совсем страшно напутано
Зачем сортировать то, что фактически является множеством?
[forwarded from idec.test]
[>]
Re: Мея видо?
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-24 15:55:30
shaos> Затем что ii-php показывает в том прядке в каком сохранено, а там может быть не хронологический порядок…
И это только плюс, так как снижает шансы потеряться старому сообщению, недавно пришедшему на станцию.
[forwarded from idec.test]
[>]
Re: Полуневдимые эхи
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-25 14:58:36
>> Для того, чтобы её не было, нужно писать дополнительный код, который по идее вообще вредный, так как удобную фишку убирает….
shaos> Ну например можно выкинуть «вообще вредный» код файлэх, который сейчас чуть ли не половину всего кода ii-php занимает :)
Можно. Но вред файлэх в чём? Вред твоей идеи понятен -- ты хочешь ограничивать своих пользователей в фичах и свободе общения.
[>]
Re: Ответ на всё сразу
idec.talks
Andrew Lobanov(tavern,1) — revoltech
2024-10-25 14:58:48
>> Точно был способ в документации. Посмотрите подробней.
revoltech> Да уже всё перерыл, никак не нахожу, как именно клиентом выкачать все сообщения из указанных в /u/e за один HTTP-запрос.
revoltech> Так-то у меня и так выкачиваются только те сообщения, ID которых ещё нет в базе. Но проблемы с ограничением длины GET-строки на сервере это не решает.
revoltech> Самым очевидным решением было бы, наверное, разрешить ещё и HTTP POST /u/m с тем же синтаксисом.
У тебя трафик платный и тарифицируется по количеству HTTP-запросов?
[>]
Re: Полуневдимые эхи
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-25 14:58:55
shaos> Надо будет фичу выпилить ;)
shaos> Объясню - по мне так должна быть возможность программно вытянуть весь контент узла любому кто не есть админ узла (причём через веб можно возможности и поурезать т.к. вебом не только люди пользуются), а со скрытыми эхами такой возможности нет.
Никуда не девается эта возможность. Скрытые эхи работают точно так же, как и те, что в list.txt.
shaos> Ну и чисто административный момент - даже если сисоп временно потерял физический доступ к узлу (уехал в отпуск) у него должна оставаться возможность видеть что там происходит пользуясь открытыми апи (напрямую либо через ботов)…
Навернуть расширение для себя было бы лучше, чем ломать удобные фичи.
[>]
Re: Полуневдимые эхи
idec.talks
Andrew Lobanov(tavern,1) — shaos
2024-10-25 14:59:02
shaos> Ну это можно решить путём объединения эх в тематические группы (которые будут иметь смысл только на уровне узла и не будут задевать сам протокол) - например для временных или мелких эх может существовать тематическая группа unsorted…
Опять какие-то костыли :)
[>]
Re: Полуневдимые эхи
idec.talks
Andrew Lobanov(tavern,1) — revoltech
2024-10-25 14:59:09
shaos>> Объясню - по мне так должна быть возможность программно вытянуть весь контент узла любому кто не есть админ узла (причём через веб можно возможности и поурезать т.к. вебом не только люди пользуются), а со скрытыми эхами такой возможности нет.
revoltech> Так, может, лучше тогда автоматизировать их добавление в list.txt, то есть сделать их НЕ скрытыми, вместо урезания полезной фичи?
Вот. Товарищ дело говорит!