• Разработка фидософта, JNode

    From Nil Alexandrov@2:5015/46 to Kirill Temnenkov on Fri May 7 23:46:42 2021
    * Originally in nino.046.local
    * Crossposted in ru.jnode
    XC jnode.local
    Hello, Kirill!

    Friday May 07 2021 22:43, from Kirill Temnenkov -> Nil Alexandrov:

    Почти 10 лет назад Ivan Agarkov написал реализацию фидософта на Java
    (я там сбоку немножко приложил руку в качестве коммитера).

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

    Jnode по коду может быть чем-то похож на более современные реализации на Golang, и я тут даже не скажу что читать проще. аписанные две независимые реализаций на Golang решали задачу (как с интересом провести пару свободных вечеров, зачёркнуто) как реализация только части функционала, и при этом особо не парясь над переиспользованием кода, т.е. хаски написан более как библиотека и сам тоссер hpt просто ей пользуется, так и JNode, там как бы библиотека, что потом собака горячая её переиспользовала.

    Там всё на чистой жабе реализовано, включая протокол binkd. Из
    сторонних библиотек используется только легковесная библиотека для
    работы с базой данных (ORM).

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

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

    Hасколько я помню, часть жаба-кода, реализующую протокол binkd, потом использовали в HotdogED для андроида.

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

    Там еще много приколов - фидошные сообщения в реляционной базе
    данных, подключаемые скрипты на java script и groovy, RPC over http,
    чтобы сообщения фигачить, подключаемые плагины с функциональностью
    nntp и xmpp.

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

    Архитектурно это всё ужас-ужас-ужас (это и сам Иван признавал) - здоровенный такой монолит. Hо работает, народ пользовался :-)

    К сожалению, как и многие проекты, аффтар наигрался, забылось.

    У Ивана вроде до сих пор одна из нод на этом работает.

    Проект интересный, но в массы не пошёл.

    У меня какое-то время нода работала на этом софте, но потом я
    все-таки переполз на традиционные hpt + binkd. Всё-таки для старых
    сетей лучше старый софт.

    Опиши свой опыт, почему тебе он "не зашёл", что такое "для старых сетей лучше старый софт"? а старом железе ява не едет или что-то идейное?

    И, насколько я помню, из здесь присутствующих Dima Bagramov какое-то время на JNODE сидел, но потом тоже перешел на более традиционный
    софт.

    -1 участник фанклуба.

    По фану можешь глянуть: https://github.com/annmuor/jnode

    Посматривал, знаю.

    Best Regards, Nil
    --- GoldED+/LNX 1.1.5
    * Origin: Киловатт центр первый галина сергей харитон (2:5015/46)
  • From Kirill Temnenkov@2:5020/828.17 to Nil Alexandrov on Sat May 8 21:42:02 2021
    Привет, Nil!

    07 май 21 23:46, Nil Alexandrov -> Kirill Temnenkov:


    У меня какое-то время нода работала на этом софте, но потом я
    все-таки переполз на традиционные hpt + binkd. Всё-таки для
    старых сетей лучше старый софт.

    Опиши свой опыт, почему тебе он "не зашёл", что такое "для старых
    сетей лучше старый софт"? Hа старом железе ява не едет или что-то
    идейное?

    Две причины - теоретическая и практическая.
    1) практическая: меня прозванивали и у прозвонщика были проблемы со соединением по binkd с моей нодой. Либо как-то поднимать стенд с таким же binkd под Win32, как у него и лечить, либо переползти на традиционный софт и заб(ы|и)ть. Я, после некоторых колебаний, выбрал второе.
    2) теоретическая: наигрался, запал прошёл.

    ЗЫ: база данных h2database себя хорошо показала, глюков и сбоев не было. А у Ивана был postgresql

    * Оригинал написан в ru.jnode
    * Скопировано в nino.046.local

    С наилучшими пожеланиями, Kirill.

    --- -Пиши, старик, пиши! Мы тебя не покинем.
    * Origin: Hеужели опять: яйца всмятку, котлеты, цыплята? (2:5020/828.17)
  • From Ivan Agarkov@2:5020/848.1 to Nil Alexandrov on Thu Jul 21 19:42:40 2022

    Hello Nil!

    07 May 21 23:46, you wrote to Kirill Temnenkov:
    А в чём вопрос?
    jnode больше 10 лет держит /848


    Ivan


    --- GoldED+/LNX 1.1.5-b20180707
    * Origin: ---- NodeX Station (2:5020/848.1)
  • From Nil A@2:5015/46 to Ivan Agarkov on Thu Jul 21 22:24:08 2022
    Hello, Ivan!

    Thursday July 21 2022 19:42, from Ivan Agarkov -> Nil Alexandrov:
    07 May 21 23:46, you wrote to Kirill Temnenkov:
    А в чём вопрос?

    Спустя год, наверное, вопросов уже и нету.

    jnode больше 10 лет держит /848

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

    Best Regards, Nil
    --- GoldED+/LNX 1.1.5
    * Origin: Linux 2.6.32-042stab145.3 (2:5015/46)
  • From Ivan Agarkov@2:5020/848.1 to Nil A on Fri Jul 22 10:15:02 2022

    Hello Nil!

    21 Jul 22 22:24, you wrote to me:
    07 May 21 23:46, you wrote to Kirill Temnenkov:
    А в чём вопрос?
    Спустя год, наверное, вопросов уже и нету.

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

    Кому ему? Мне? Да нет, я могу с любого пойнта читать и писать.

    Автор jnode - это я, если что.


    Ivan


    --- GoldED+/LNX 1.1.5-b20180707
    * Origin: ---- NodeX Station (2:5020/848.1)
  • From Nil A@2:5015/46 to Ivan Agarkov on Fri Jul 22 10:41:02 2022
    Hello, Ivan!

    Friday July 22 2022 10:15, from Ivan Agarkov -> Nil A:

    jnode больше 10 лет держит /848

    Т.е. /848 это он, это не ты? ;-)

    Кому ему? Мне? Да нет, я могу с любого пойнта читать и писать.

    С любого пойнта, но не с ноды, ибо там редактора нету.

    Автор jnode - это я, если что.

    Кто бы сомневался.

    Best Regards, Nil
    --- GoldED+/LNX 1.1.5
    * Origin: Linux 2.6.32-042stab145.3 (2:5015/46)
  • From Ivan Agarkov@2:5020/848.1 to Nil A on Fri Jul 22 11:08:08 2022

    Hello Nil!

    22 Jul 22 10:41, you wrote to me:


    jnode больше 10 лет держит /848
    Т.е. /848 это он, это не ты? ;-)
    Это альтернативная личность. Доктора Дью смотрел?

    Кому ему? Мне? Да нет, я могу с любого пойнта читать и писать.
    С любого пойнта, но не с ноды, ибо там редактора нету.
    Для кого-то нету, для кого-то - есть :)

    Автор jnode - это я, если что.
    Кто бы сомневался.

    Ivan


    --- GoldED+/LNX 1.1.5-b20180707
    * Origin: ---- NodeX Station (2:5020/848.1)