[zeromq-dev] 0MQ User Guide

Martin Sustrik sustrik at 250bpm.com
Thu Aug 12 08:38:01 CEST 2010

Oliver Smith wrote:

> Also... Have you considered perhaps considering the term "Mailbox" or 
> "handle" or "descriptor" for the sockets? The more distance you can put 
> between the mundane concept of a BSD/TCP socket and a ZeroMQ 
> zap-pow-kabloom endpoint the better maybe.

Getting people to the zap-pow-kaboom point (a.k.a. paradigm shift) is 
probably most important point of the user guide. However, just renaming 
a concept won't help IMO.

Although the supersocket/spandex story in the manual at first sight 
seems to be just a joke I really like it as it makes reader focus on the 
fact that 0MQ sockets are *different* from BSD sockets. It makes him 
puzzled about what the difference is supposed to be. Being puzzled means 
(at least for a programmer) having an urge to find out what's going on etc.

 > When we were working on (one of the first) network transparent OSs,
 > and all of the machinery disappeared (no rcp/scp, no remote
 > logins, ...), users didn't understand how they would get a file at a
 > distant server without doing anything.  The corresponding metaphoric
 > question was: "How do you explain a window to a caveman?" [attr. to G.
 > Popek]
 > We've got a similar problem.  We have to find a way to communicate the
 > essential Zen (Ø-ness) of this platform - unification of ubiquitous
 > transports into an efficient conceptual and operational framework.

Yes. However, I am not sure the satori moment can be brought by anything 
else than coding a non-trivial application on top of 0MQ yourself. What 
the manual can do is to encourage the reader to actually try to do that.


More information about the zeromq-dev mailing list