News for hackers. Stuff that matters.
Re:ZeroMQ 4.2.0 by omginternets on Friday November 04, 2016 @09:11AM (#12872244)
I'm confused. I thought 0MQ had essentially been superceded by nanomsg [0]. What's the deal?

On a related note, using nnpy [1] and mangos [0] have been a real pleasure.

And lastly, a bit of info on how 0MQ and nanomsg differ [3].

[0] http://nanomsg.org/ [1] https://github.com/nanomsg/nnpy [2] https://github.com/go-mangos/mangos [3] http://nanomsg.org/documentation-zeromq.html

Re:ZeroMQ 4.2.0 by ocschwar on Friday November 04, 2016 @11:07AM (#12873135)
Read the ZeroMQ manual. That's the most important part of ZMQ, as it's the clearest and best guide to your options for partitioning a task and arranging communication between software processes.

After that, you can implement your stuff in 0MQ, AMQP, nanomsg, or whatever else. I fully expect nanomsg and 0MQ to compete with each other on Github over the next 5 years or so, and I personally won't take sides.

For me, I use the manual to design programs I then write in Rust, a lot of it with no explicit message passing at all. (REQ-REP and PUSH PULL become simple function calls, sometimes mediated through thread spawning, and sometimes not, for example.)

Re:ZeroMQ 4.2.0 by omginternets on Friday November 04, 2016 @02:32PM (#12874793)
Hmm, I'm not sure I understand exactly what you're saying.

The 0MQ manual is (indeed) excellent, but it seems like a design whitepaper. It essentially describes what are known as the scalability protocols. As you say, it's independent of the implementation, i.e.: the library.

My confusion largely stems from a presentation I watched [0] in which it was implied that 0MQ suffered from a few design issues, and had therefore been forked. It seems like the library was rewritten in the meantime, however, so perhaps these points are no longer relevant.

I suppose I'm looking for a bit of clarity as to why the fork occurred in the first place.

Re:ZeroMQ 4.2.0 by to3m on Friday November 04, 2016 @05:51PM (#12876464)
http://hintjens.com/blog:117#toc4

``For ZeroMQ, our stated mission was "Fastest. Messaging. Ever." This is a nice, and nearly impossible answer to a problem we could all agree on: namely, the slow, bloated technology available at that time. However, my co-founder Martin and I had conflicting goals. He wanted to build the best software possible, while I wanted to build the largest community possible. As the user base grew, his dramatic changes, which broke existing applications, caused increasing pain.

``In that case, we were able to make everyone happy (Martin went off to build a new library called "Nano").''

Re:ZeroMQ 4.2.0 by ocschwar on Friday November 04, 2016 @04:32PM (#12875848)
That fork was long enough ago that those issues are moot.
Re:ZeroMQ 4.2.0 by hood_syntax on Friday November 04, 2016 @09:15AM (#12872272)
Martin Sustrik split because of differences, did a completely new implementation called nanomsg. He is no longer maintaining nanomsg. That task has fallen to someone else, but it doesn't seem to be too active at the moment.
Re:ZeroMQ 4.2.0 by omginternets on Friday November 04, 2016 @10:43AM (#12872920)
Right, but my point was rather about the differences you mention. I was under the impression that 0MQ was superceded by nanomsg for technical reasons (UNIX-iness, 0MQ's threading model, etc).

Whence comes the impression that nanomsg is inactive?

Re:ZeroMQ 4.2.0 by rubber_duck on Friday November 04, 2016 @10:55AM (#12873045)
>Whence comes the impression that nanomsg is inactive?

Because two 'main' maintainers so far abandoned it quite publicly, maybe someone picked it up afterwards.

Re:ZeroMQ 4.2.0 by widdma on Friday November 04, 2016 @03:01PM (#12875010)
Garrett D'Amore, who was previously a maintainer and is also the maintainer of mangos, returned in April on the condition he be BDFL.

See: https://github.com/nanomsg/nanomsg/issues/619

Re:ZeroMQ 4.2.0 by qwertyuiop924 on Friday November 04, 2016 @05:34PM (#12876345)
last commit 9 days ago: It's active.
Re:ZeroMQ 4.2.0 by omginternets on Friday November 04, 2016 @02:25PM (#12874745)
Ah, I missed it.

The mangos project seems to be alive and well, in any case.

Re:ZeroMQ 4.2.0 by jpm_sd on Friday November 04, 2016 @11:05AM (#12873124)
Re:ZeroMQ 4.2.0 by montyedwards on Friday November 04, 2016 @12:59PM (#12874042)
Not disagreeing with you or the postmortem, but:

1. that post is from Feb 8, 2016

2. nanomsg 1.0 was released on June 10, 2016

After nanomsg 1.0 release, recent activity on github includes:

8 days ago -- fixes #828 Add logical connections to UDP RFC

9 days ago -- fixes #827 nanomsg zerotier mapping rfc errors

11 days ago -- fixes #825 Extra tests in pipe.c gdamore committed 11 days ago

15 days ago -- fixes #800 accept4 not implemented on all systems

15 days ago -- fixes #783 WS transport - not connectable from Firefox

16 days ago -- fixes #821 NN_WS_HANDSHAKE_CRLF is silly

And etc.

Re:ZeroMQ 4.2.0 by widdma on Friday November 04, 2016 @03:04PM (#12875037)
After that, Garrett D'Amore eventually returned on condition he be BDFL. See https://github.com/nanomsg/nanomsg/issues/619

Since then the project looks to be fairly healthy.

Re:ZeroMQ 4.2.0 by omginternets on Friday November 04, 2016 @08:52PM (#12877487)
Oh good! This is the guy behind mangos, too.
Re:ZeroMQ 4.2.0 by omginternets on Friday November 04, 2016 @02:26PM (#12874753)
Hmm I missed it. In addition to the sibling comment above, the mangos project seems alive and well.
Re:ZeroMQ 4.2.0 by jchassoul on Friday November 04, 2016 @10:37PM (#12877849)
Yes you are confused. The 0MQ[0] have never been superceded by nanomsg. The deal as you are pointing out very clearly is that the two projects are alive and well.

On a related note, using jupyter[1], salt[2], circus[3] and building fruits have been a real pleasure too.

And lastly, a bit of info on how 0MQ and nanomsg differ[4].

[0]http://zeromq.org/ [1]http://jupyter.org/ [2]https://saltstack.com/ [3]https://github.com/circus-tent [4]http://hintjens.com/blog:112