vt

Попробую написать многобукв, почему стюардесса, которую тут некоторые пытаются откопать — не нужна. Причем особенно она не нужна с точки зрения погромиста, на чем и заострим внимание, итак.
0. Погромист не пишет программы для собственного развлечения, он должен получить конечный результат.
Это главный пункт, от которого надо отталкиваться и никогда нельзя про него забывать.
1. Конечный результат — это пользователи и только пользователи.
2. Пользователя совершенно не волнует какой ПРОТОКОЛ внутри программы, его в первую и практически единственную очередь интересует интерфейс — любого, внимание, пользователя. Не только блондинки с айфоном, но и условных ляха и комара с клитором тхинкпада.
3. В 2к18+1 году существует огромное множество ГОТОВЫХ решений для написания ПРОТОКОЛА любых чатов и мессенджеров грубо говоря в несколько кликов, причем маминому погромисту вообще не надо разбираться не в тисипиайпи, ни даже в хттп, не говоря уже про xml, типовой чат создается следующим образом: мышкой в Firebase console (или любом другом подобном продукте) описываются структуры типа Message со всеми нужными полями типа user, body и attachment, ну и структура Chat c полями users и messages. Ииии … все! СЕРВЕР уже готов! Даже управление пользователями не нужно сочинять заново, в том же Google Firebase (или Apple CloudKit, или десятке других аналогичных решений, можно даже швабодные найти) ВСЕ уже есть, можно настраивать авторизацию по вкусу — через емейл, телефон, логин-пароль, соцсети или черта лысого. Это настраивается один раз за полчаса и забывается до решения более важных задач. Причем клиентская часть протокола ТОЖЕ уже готова и ТОЖЕ не является задачей вообще — достаточно подключить SDK выбранной платформы в свою программу на любом языке и все чаты с сообщениями уже автоматически синхронизируются с клиентами.
4. А более важные задачи — это ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ. Абсолютно в любом раскладе, даже если мы пишем чатик для ляха и комара — так вот если не тратить время на велосипедный сервер и протокол, или реанимацию говна из нулевых, то можно 95% усилий потратить именно на ИНТЕРФЕЙС клиента и именно тут можно проявить свою погромистскую индивидуальность, написав клиент на Rust, Haskell, Agda, под X11, xmonad, и черта лысого, и выполнить все хотелки комара и ляха, если у нас поставлена задача удивить именно этих удивительных существ! И только ПОСЛЕ того, как мы, за наш восхитительный продукт под маргинальные системы на маргинальных языках погромирования, получили признание всех аутистов мира — можно уже оптимизировать ПРОТОКОЛ, выбрасывая неподходящие нам идеологически решения корпораций, и формализуя спецификацию протокола, чтоб иные мамины погромисты смогли написать клиент для нашего маргинального чятика. Можно даже совместимость с XMPP прикрутить, без проблем, но ПОТОМ, в самую последнюю очередь.

В случае же начинания чятика с написания xml-парсера и поиска текста методов тыка в xmpp-станзе как в бд(ц), погромист тратит свое время на “преждевременную оптимизацию” и в обозримые сроки не получит никакого результата — ни рабочего сервера, ни рабочего протокола, до клиентов дело не дойдет вообще, как и до заведения каких-либо пользователей. Даже лях с комаром, как и любой другой воинствующий хмпп-евангелист, не пошевелят пальцем смотреть на это поделие, а продолжат сидеть в ткаббере, и в чем там сидит комар, потому что в ткаббер вложено 15 лет труда по изготовлению ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ, пусть даже для такого странного как они!

Monstreek

"Столичный город и приличная зарплата", — сказал
бородатый негромко,  но я услышал.  "Не надо,  — сказал я.  — Не  надо
мерять на деньги".  — "Да нет, я пошутил", — сказал бородатый. "Это он
так шутит,  — сказал горбоносый. — Интереснее, чем у нас, вам нигде не
будет".  --  "Почему  вы так думаете?" — "Уверен".  — "А я не уверен".
Горбоносый усмехнулся.  "Мы еще поговорим на эту тему,  — сказал он. —
Вы долго пробудете в Соловце?" — "Дня два максимум".  — "Вот на второй
день и поговорим".  Бородатый заявил:  "Лично я вижу в этом перст судьбы
— шли по лесу и встретили программиста.  Мне кажется,  вы обречены". —
"Вам действительно так нужен программист?" — спросил  я.  "Нам  позарез
нужен программист".  — "Я поговорю с ребятами, — пообещал я. — Я знаю
недовольных". — "Нам нужен не всякий программист, — сказал горбоносый.
--   Программисты   --  народ  дефицитный,  избаловались,  а  нам  нужен
небалованный".  — "Да,  это сложнее",  --  сказал  я.  Горбоносый  стал
загибать  пальцы:  "Нам  нужен  программист:  а  — небалованный,  бэ —
доброволец,  цэ — чтобы согласился жить  в  общежитии..."  --  "Дэ,  —
подхватил  бородатый,  --  на  сто  двадцать  рублей".  — "А как насчет
крылышек?  — спросил я.  — Или,  скажем, сияния вокруг головы? Один на
тысячу!" — "А нам всего-то один и нужен", — сказал горбоносый. "А если
их всего девятьсот?" — "Согласны на девять десятых".

den-po

ЗАНИМАТЕЛЬНАЯ ЭЛЕКТРОНИКА. ЦИФРОВЫЕ СХЕМЫ. МАНГА
Ученица старшей школы по имени Аисака Ицумо, любящая разбирать электронные приборы, пытается устроиться на работу в комиссионный магазин бытовой техники. Книга познакомит читателя с особенностями и типами цифровых схем, причинами их широкого распространения, базовыми методами логического проектирования и лежащими в их основе идеями.

gudez-z-z

Качество.

— Отчеты, отчеты, отчеты, — Гебердур с отвращением схватил кипу бумаги и, не глядя, бросил их за спину. Раздался тихий «Ой» и звук сползающего по стене тела.
Маг оглянулся – по комнате изящно, кружась, словно осенние листья, летали документы. В углу, около двери, лежал Туло – его многострадальный ученик. Похоже, стопка документов попала ему в голову.
— Очнется, — равнодушно отметил Гебердур, флегматично смахнув пару оставшихся бумажек со стола, и задумчиво уставился за окно. Там в свои права вступала осень. И золотом украсились деревья, в ожидании холодной зимы, словно в последний раз надевая свои дорогие наряды.
(продолжение в комментах)