So for anyone who uses #NNG or #nanomsg I can say that the 2.0 effort for NNG is going well. Yesterday I benchmarked a 20 percent improvement in uncontended small message latency. I expect the results to be even better in high contention systems.

Well, I finished adding the last subscribers and have done refactoring.
One of the changes is using atomic variables.
The full test will now begin on Monday.

#nanomsg #nng

So, I repeated tests with eight subscribers: 5 for a first id and 3 for a second. The total number of subscription clients will be 10. And I am going to add the last two today. I need the full test after that.

#nanomsg #nng

Listened to https://twit.tv/floss469 about #nanomsg. [0]

Nanomsg guy, Garrett D'Amore, does a really good job rehabilitating the standing of the project and arguing for its utility and raison d'être. The existence of several ground-up implementations of the protocols (C, Rust [1], Go [2]) is interesting, and the nng work (still in C, still wire-compatible, but rewritten at core) and optional WebSocket transport (in addition to TCP, TLS and unix socket) sounds interesting too.

Drew Crawford's (in)famous post-mortem post [3], from two years ago, was written when D'Amore's mangos [2] project, a pure-Go implementation of nanomsg, or rather the nanomsg #scalabilityprotocols, was healthy and going on, whereas nanomsg proper was languishing. He has since stepped up to take over leadership of nanomsg as well.

Apart from a few comparisons with ZeroMQ, governance wasn't discussed much. Nanomsg and nng are described as mainly a one-man show. Too bad, I was hoping for some discussion of people-over-code vs code-over-people and Hintjens's exothermic process post.

The concrete question is asked 39 minutes in, and D'Amore speaks out against consensus and for strong leadership, especially in a small project, the discussion doesn't go very deep beyond that statement. Strong leadership tempered by forking is what he goes for.

On the one hand, it's pretty clear that ZeroMQ has orders of magnitude greater reach and adoption (D'Amore guesses "maybe even two orders of magnitude", but I have the uninformed impression it's more than that). On the other hand I very much support that you decide your definition of "success" and if nanomsg fulfills its task within its design constraints, that's great. We get to use it if we like. On that topic, #picolisp has nanomsg bindings. :-)

[0] http://nanomsg.org/
[1] https://github.com/blabaere/scaproust
[2] https://github.com/go-mangos/mangos
[3] http://sealedabstract.com/rants/nanomsg-postmortem-and-other-stories/

/via https://datamost.com/dw/note/DkpLHc_QTRKvWpr2nZyqSw
FLOSS Weekly 469 nanomsg | TWiT.TV

nanomsg is a is a socket library that provides several common communication patterns. It aims to make the networking layer fast, scalable, and easy to use. Implemented in C, it wor…