Новый движок и новый серверThu Mar 9 17:23:49 2023 UTC Ну что же, свершилось — если вы увидели в ленте эту новость, значит, сайт уже на новом месте и управляется новой CMS. Старый сайт ещё некоторое время будет доступен по адресу http://old.stolyarov.info. Оставлять комментарии теперь снова возможно. У кого на старом сайте были зарегистрированные учётные записи — могут продолжить ими пользоваться на новом сайте, я их все перенёс; но с этим связан один нетривиальный момент. Новый движок всё хранит в обычных файлах, и учётная запись пользователя технически реализована как директория с именем, совпадающим с именем пользователя, поэтому здесь намного более жёсткие ограничения на входные имена, и не все учётки со старого сайта этим ограничениям удовлетворяли. Я эту проблему решил, объявив старые входные имена «видимыми именами» (которые, к слову, можно менять практически без ограничений), а в роли входных имён для учёток, перенесённых со старого сайта, здесь будут выступать их числовые uid'ы. Чтобы узнать, как теперь называется ваша учётная запись, найдите какой-нибудь из своих комментов и кликните по значку рядом с именем. Затем запросите для этого пользователя «новые» одноразовые пароли, они придут на ваш email, если только ваш доблестный почтовик это письмо не отрежектит (пока что такая проблема есть с gmail'ом, и «решать» её я не собираюсь, поскольку проблема не у меня, а у гуглофашистов в их подгнивших мозгах). Есть, увы, пока что один регресс — не реализована загрузка юзерпиков, в том числе их замена. Ну то есть генератор про юзерпики знает и их куда надо вставляет, а вот CGI-программа (язык не поворачивается её назвать скриптом, я-то знаю её объём) загрузки файлов принимать пока не умеет, это следующая задача в моём TODO. Если надо — свяжитесь со мной, подложу ваш юзерпик куда следует. В общем вот :-) Enjoy. |
пояснениеВы находитесь на официальном сайте Андрея Викторовича Столярова, автора учебных пособий по программированию и информационным технологиям. Если вы искали сайт замечательного писателя-фантаста Андрея Михайловича Столярова, то вам, к сожалению, не сюда. Андрей Михайлович Столяров в библиотеке Мошкова |
☞ From Anonymous (unverified) Fri Apr 28 18:09:19 2023 UTC
Phorum
Есть такой движок (для форумов) -- Phorum.org. Он на PHP, MySQL, использует XHTML 1.0, существует с 98 года.
ответить
From admin Fri Apr 28 22:11:20 2023 UTC
Вот откуда такое берётся, а?
Слышь, чувырло, ты читать умеешь? Мне исходно требовалось, чтобы БЕЗ СУБД!!! Потому что этот ёбаный MySQL моего времени сожрал столько, что впору его создателей пристрелить.
И без интерпретруемых языков, включая, разумеется, этот поганый пыхапы. Потому что, во-первых, лишняя зависимость, а во-вторых, просто говно.
И одна из задач стояла -- взять существующий сайт, развёрнутый на друпале, и, сохранив весь его контент, при этом избавиться и от друпала, и от трижды проклятого и триста раз ненавистного MySQL. Вот смысл какой с одного пыхапышного поделья на другое перелезать, можешь мне объяснить, чмо?
Но самое главное условие -- чтоб не то что JS, чтоб вообще никаких следов такового, блядь, потому что нельзя, потому что за исполнение в браузере надо на кол сажать, понимаешь? Или твои мозги уже полностью уЭбдезигном разрушены?
Это не говоря уже о том, что вообще-то этот сайт никакого отношения к "форумам" не имеет.
Ты что вообще на моём сайте забыл, кто тебя сюда позвал? Я-то уж точно не звал. Так что вали отсюда и дорогу сюда забудь.
ответить
From Anonymous (unverified) Sat Apr 29 08:14:28 2023 UTC
Тролль
Да человек просто явный неприкрытый тролль и все.
ответить
From admin Sat Apr 29 08:38:51 2023 UTC
Кстати да
вынужден признать, что в таком случае у него получилось
ответить
From Alejandro Tue May 2 12:58:59 2023 UTC
Тролли
Только набежало их в последнее время на сайт, будто весна наступила :-)
ответить
From Anonymous (unverified) Sat Apr 29 10:29:46 2023 UTC
Погодите
> Мне исходно требовалось, чтобы БЕЗ СУБД!!!
Да, но это был раньше рекомендательный пункт.
Кстати, есть еще один движок exbb. Он на файлах (без СУБД), однако на PHP.
> Но самое главное условие -- чтоб не то что JS
Так там и нет JS. Он есть, только если определенные плагины ставить, которые при наведении курсора на ссылку preview включают и autoredirect.
> Это не говоря уже о том, что вообще-то этот сайт никакого отношения к "форумам" не имеет.
А чем "гостевая" принципиально отличается от форума?
ответить
From admin Sat Apr 29 10:53:28 2023 UTC
Гы, я его посылаю, а оно не идёт
> это был раньше рекомендательный пункт
Ровно до того момента, как я написал первую строчку в коде собственного движка. С этого момента все мои хотелки стали строго обязательны, в том числе язык реализации C++ (можно plain C) без внешних библиотек и строго статическая сборка.
> однако на PHP
Вот ты чего напрягаешься-то? Я уже написал движок, который меня устраивает, а ты мне продолжаешь перечислять всякие обезьяньи поделья. Не, ну вот шесть лет назад в том сраче на LORе это было уместно, там я к компромиссам был готов, чтоб самому не писать, дык это тебе для начала машина времени потребуется.
> Так там и нет JS
Он там на сайте есть, дальше я не смотрел и не вижу причин смотреть. Если создатели этого дерьма не декларируют изначально возможность обходиться без JS, то они, следовательно, не понимают, что без него требуется обходиться — и, следовательно, вылезет оно в самый неподходящий момент и в самом неудобном месте.
> А чем "гостевая" принципиально отличается от форума?
А таки какое отношение этот вопрос имеет к делу? Тут на сайте отнюдь не только гостевуха, и даже не столько.
ответить
☞ From Anonymous (unverified) Fri Apr 7 16:33:13 2023 UTC
Редактирование комментариев
Функционал был убран? Почему?
ответить
From admin Fri Apr 7 22:14:22 2023 UTC
читать не умеем или что?
Мне вот что интересно, как может вообще идти речь об "убирании" функций, когда на сайте полностью сменилась реализация серверной части (то есть, собственно, всего сайта, поскольку никакой клиентской части не было раньше, нет и сейчас).
Теперь по делу. Естественно, анонимным пользователям редактирование недоступно, оно и не было никогда доступно. Что касается пользователей зарегистрированных, то текущие настройки сайта позволяют им редактировать комментарии в течение 20 минут с момента их публикации. Почему добавлено такое ограничение? Потому что я давно вообще-то хотел так сделать, но в пятом друпале просто не было соответствующих функций.
ответить
☞ From Anonymous (unverified) Wed Mar 29 20:40:53 2023 UTC
Поддерживаются ли "критические секции"?
Что будет, если два пользователя CMS попытаются одновременно совершить какие-то действия? Корректно ли сгенерируются страницы?
ответить
From admin Wed Mar 29 21:56:42 2023 UTC
Тьфу, блЪ
Вы меня, простите, за лоха держите? Ну так пойдите во втором томе гляньте часть, имеющую номер VII в общей нумерации.
NB: операция переименования файла, в том числе "поверх" существующего, является атомарной, в большинстве случаев это спасает само по себе. Создание файла с флажком O_EXCL тоже обычно атомарно (да, на NFS я не закладываюсь, если сервер использует NFSные диски, то там возможные глюки из-за параллелизма будут совершенно незаметны на фоне всего того, что устроит сам NFS). Есть ровно одна ситуация, из-за которой пришлось воспользоваться lock-файлом, но ничего, я от этого не надорвался.
ответить
From Павел Сутырин (unverified) Thu Apr 27 13:18:54 2023 UTC
Немного занудства)
Ув. Андрей Викторович, поздравляю с обновлением сервера.
По теме ветки: а вопрос-то задан хороший ;)
Под капотом, как пояснил ув. автор, происходит атомарная файловая операция — а гарантируется ли, по аналогии с атомарностью в СУБД, что один клиент получит ответ-успех, а другой клиент получит ответ-неуспех?
Или возможна ситуация, когда оба клиента получили ответ успех, но по факту правки одного из них были утеряны?
ответить
From admin Thu Apr 27 19:10:53 2023 UTC
Ну вот что за бредни опять?
Ваш вопрос не имеет никакого отношения к практически возможным ситуациям, и комментировать эту чушь я никакого желания не имею. Если после публикации исходников сможете продемонстрировать на практическом тесте возникновение кривой ситуации — будет о чём разговаривать.
Вообще, глубокоуважаемый бывший коллега, я вынужден сказать, что совершенно не рад вас видеть на своём сайте и нижайше прошу забыть дорогу сюда, пока не нарвались на грубость. Я в последнее время совершенно не страдаю излишней вежливостью. Мне вот лично с вами нечего обсуждать уже больше десяти лет, и вам это прекрасно известно.
ответить
☞ From Anonymous (unverified) Mon Mar 27 19:41:57 2023 UTC
Обязательные поля
Андрей Викторович, добрый день!
На предыдущем движке при добавлении комментария можно было заполнить только текст и все, тогда в поле "Тема" записывались несколько первых слов текста, а в поле "Имя" записывалось "Anonymous".
Сейчас я так не могу сделать, сайт жалуется, что не все обязательные поля заполнены (обязательными являются, видимо, вообще все). Приходится заполнять руками.
Будет ли на новом движке возможность указания только текста комментария, как и раньше?
ответить
From admin Mon Mar 27 20:01:41 2023 UTC
Я такого не планировал
Можно, в принципе, поле темы сделать необязательным, но это аукнется во всяких очередях на премод и прочих разных списках, которых обычным посетителям не видно.
Вообще я, пожалуй, подумаю, как с этим поступить. Один из вариантов — предзаполнять тему примерно так, как это сделано на infoviolence.org, для этого даже движок править не надо :)
UPD: поле имени теперь по умолчанию заполняется словом "Anonymous", как и на старом сайте.
ответить
☞ From Anonymous (unverified) Mon Mar 27 11:58:45 2023 UTC
СУБД
Будет поддержка СУБД?
ответить
From admin Mon Mar 27 15:27:51 2023 UTC
Мёртвого осла, блин, уши
Разумеется, нет. Это было одним из ключевых требований, ради которых я начал её писать — чтобы никаких СУБД нахрен к чёртовой матери. И одно из основных достижений — что удалось сайт, изначально развёрнутый на друпале с MySQL, полностью перенести (т.е. вытащить из треклятого MySQL и расположить в обычных файлах) без потери контента.
Вообще мне непонятно, это что, троллинг такой?
ответить
☞ From Anonymous (unverified) Mon Mar 27 11:55:24 2023 UTC
Кол-во строк
Какой вышел объем написанного кода в текущей реализации?
ответить
From admin Mon Mar 27 16:02:41 2023 UTC
Средняя температура по больнице?
Ну, в основной директории проекта сейчас вот так:
Проблема в том, что есть ещё либы, и от них примерно две трети кода написано специально под этот проект, хотя может, разумеется, использоваться и вне его (иначе оно не было бы либами). Там ещё примерно столько же.
ответить
From Anon (unverified) Mon Mar 27 19:40:09 2023 UTC
cloc
Советую ознакомиться со скриптиком. Весьма удобно.
ответить
From admin Mon Mar 27 20:37:51 2023 UTC
Ага-угу, уже бегу
Еле нашёл, кстати, что за зверь.
Не буду я с ним "знакомиться". Количество строк в исходнике — вообще метрика изначально странная, мало что отражающая, и всё вот это вот "комменты отдельно, пустые строки отдельно" ничему толком не поможет. Ради этого запускать непойми кем написанный (и опубликованный на гитхабе, что как бы намекает) скрипт чёрт знает на чём (ну да, на перле, он и есть чёрт знает что) — увольте-с.
ответить
From Alejandro Sun Apr 2 02:18:58 2023 UTC
Есть штука покруче
А зацените такую команду:
Лучше любых скриптиков.
ответить
From admin Sun Apr 2 10:25:09 2023 UTC
Ну началооооось
В последнем грепе я бы предложил
^\s*$
, а то визуально пустая строка, в которой забыли пробел, посчитается как содержащая код.А ещё можно сделать "счётчик причитающихся затрещин":
Только один момент: когда делать нечего, можно поиграться с грепами и седами, но на выходе, как водится, будет туфта, ибо количество строк в программе не значит примерно ничего. Как и любой числовой показатель. Особенно всякие индексы хирша. Ну хотя это уже из другой области.
ответить
From Alejandro Sun Apr 2 12:38:38 2023 UTC
(-)
> количество строк в программе не значит примерно ничего
Как жаль, что далеко не все (по крайней мере, среди тех, с кем приходилось иметь дело) это понимают...
ответить
☞ From Leonid Tue Mar 21 16:15:45 2023 UTC
Не хватает банеров
Очень не хватает "теплых и уютных" банеров вроде "Valid XHTML 1.0".
ответить
From admin Tue Mar 21 20:09:51 2023 UTC
Подумаю на эту тему
(-)
ответить
From Alejandro Thu Mar 23 18:40:14 2023 UTC
(-)
А также "koi8-r only" :)
ответить
From admin Thu Mar 23 23:47:00 2023 UTC
С этим сложности
Отдаётся тут всё в koi8-r, но под капотом там перекодировка, причём потенциально — из чего угодно во что угодно, реально там сейчас поддержаны koi8-r, cp1251, ascii и utf8, подо всё остальное нет таблиц, но вставить их технически проблем не составляет. И перевод из одной кодировки в другую, если ни одна из них не является utf8, происходит через utf8. Плюс весь контент, перенесённый со старого сайта и пока не подвергшийся редактированию, хранится в utf8.
Koi8r выбрана рабочей, потому что кодировка конфигов должна совпадать с кодировкой сайта (т.е. перекодируются только внешние файлы, составляющие аналог базы данных), а редактировать конфиги в koi8 мне проще. Ну и плюс лишний раз показать фак комитетским бастардам.
ответить
☞ From anon (unverified) Fri Mar 10 06:24:19 2023 UTC
CMS
Здравствуйте, а планируется ли выкладывать код этой CMS?
ответить
From admin Fri Mar 10 10:38:56 2023 UTC
Обязательно
Естественно, планирую, только не прямо сейчас. В том виде, в котором она сейчас есть, её вряд ли сможет использовать кто-то кроме меня самого, нужно сделать хотя бы минимальную документацию, пару примеров сайтов (ни этот сайт, ни infoviolence.org в качестве таких примеров, увы, не годятся, слишком специфичны), да и сами исходники причесать.
ответить
From Leonid (unverified) Wed Mar 15 14:32:26 2023 UTC
Будет ли репозиторий?
А будет ли открыт для этих целей репозиторий (например git) с какой-нибудь веб-мордой (например cgit) ?
ответить
From admin Wed Mar 15 15:50:31 2023 UTC
Нет
Сам я использую git, но светить его публике не собираюсь, тем более через веб-морду. Будут классические релизы в виде архивов .tgz, как это и должно быть.
ответить
From Anonymous (unverified) Sat May 6 05:01:10 2023 UTC
А как исправления, улучшения слать тогда?
Разве удобно вместо PR присылать *.diff файлы?
ответить
From admin Sat May 6 10:30:18 2023 UTC
Думаю, что лично вам - никак
Значицца так. Моё отношение к ньюфагам широко известно. Моё отношение ко всякой вебдванольной дряни вроде github, gitlab и всего прочего в таком духе вроде бы тоже никогда не было секретом, как и к тем, кто этой мерзостью пользуется; собственно, я утверждаю, что пользователи подобных репохостингов — это буйные душевнобольные, опасные для окружающих. Аббревиатуру PR я даже не сразу расшифровал, но да, это pull request — так вот, ни о каких пуллреквестах не может быть просто вообще никакой речи. Странно, что кому-то это не очевидно.
Кстати, я очень сильно сомневаюсь, что персонаж, который начинает с сетований по поводу недоступности пуллреквестов, в принципе может отконтрибутить что-то такое, что я согласился бы включить в проект.
ответить
From Anonymous (unverified) Sun May 7 04:58:52 2023 UTC
cgit?
А почему нельзя поднять cgit на этом домене? (cgit -- игра слов CGI и GIT).
Веб-морда для каталогов с гит-репозиторями на CGI без JS.
ответить
From admin Sun May 7 11:17:31 2023 UTC
re: cgit
Какое конкретно слово вам непонятно в моём комменте выше, цитирую:
Сам я использую git, но светить его публике не собираюсь, тем более через веб-морду.
Вот что здесь неясно? Формальный ответ на ваш вопрос "почему нельзя": потому что не хочу. Система контроля версий и её содержимое — это внутренняя кухня, которую я никогда не предполагал выставлять на всеобщее обозрение и категорически не вижу, зачем это делать.
ответить
From Anonymous (unverified) Sat Apr 1 18:44:02 2023 UTC
Исходники
> Естественно, планирую, только не прямо сейчас.
А скоро?
ответить
From admin Sat Apr 1 18:52:24 2023 UTC
Да фиг знает
Ну вот смотрите, я эту CMSку начал писать в январе 2019 года и был уверен, что к осени того же года она уже будет готова. Вместо полугода получилось, как видим, четыре года. Конечно, далеко не всё это время я ею занимался, плотного кодинга несколько месяцев ушло — но в "грязном времени" я маху дал в восемь раз. Даже больше, поскольку не все планировавшиеся функции сейчас есть.
Ну вот скажу я вам сейчас, что в течение месяца всё будет, и что? Кому от этого станет легче?
ответить
From Павел Сутырин (unverified) Thu Apr 27 13:30:08 2023 UTC
Yet another CMS
А вот кстати!
Вы не думали написать подробнее о самой CMS, как дошли до идеи проекта, чем руководствовались, «почему не подошли другие решения», «почему решили отказаться от СУБД» — и прочая, и прочая.
Есть предположение, что многим это будет интересно =)
ответить
From admin Thu Apr 27 17:11:54 2023 UTC
Видимо, вы не следили за этой историей
Поскольку могут быть и другие люди, не следившие за происходящим, вот ссылка на ЛОРовский срачЪ 2017 года (уже шесть лет прошло, однако) https://www.linux.org.ru/forum/web-development/13199140 Там всё достаточно подробно написано, особенно в комментах. Если кто не знает, я там в роли топик-стартера (и вообще под ником Croco).
ответить
From МихалыЧЪ Fri Sep 22 09:30:51 2023 UTC
Re: Видимо, вы не следили за этой историей
Сходил по ссылке, долго смотрел этот пинг-понг,ещё раз убедился, что Бог создал людей разными, иначе все давно бы уже жили в коммуне. А если по доброму упереться рогом и идти своей дорогой, то случаются удивительные вещи: и стены отворяются, и мечты сбываются. Даром только сыр в мышеловке, а свой мир надо строить самому и БЫТЬ в нём Хозяином. И я ненавижу яндекс и гугл. Если гугл выкручивает руки, то яндекс как бандит приходит в твой дом и ведёт себя как оккупант. Поэтому я выбрал вивалди. Давно хочу разобраться во всём и делать не зависимо от расставленных "флажков". У добрых людей должна быть альтернатива, поэтому им надо объединяться и строить свой мир.
ответить
From Andrey V. Stolyarov Fri Sep 22 10:30:44 2023 UTC
Re: Видимо, вы не следили за этой историей
Слово "бог" пишется со строчной буквы, а проприетарных программ не существует, и браузера vivaldi это тоже касается. Если вы не согласны с любым из этих двух утверждений (а вы, судя по всему, не согласны с обоими), то на моём сайте вам заведомо делать нечего, забудьте сюда дорогу.
ответить