Unconference, Brussels, 10th May 2011, Minutes

Maintaining stable branch (Pieter Hintjens)

  • We should create test cases for patches for stable, so that stable can be properly tested before released.
  • Some of the patches (those that can be run automatically in a single process) can be incorporated into automatic test suite.

Issue Tracker

  • The github bugtracker is very simple and doesn't suit the needs of a complex project such as 0mq.
  • Mikko Koppanen will ask for a JIRA license and install it on his box.
  • Pieter Hintjens and Martin Lucina will administer thr JIRA.

Lecture Recorder (Mikko Koppanen)

  • Mikko gave a presentation about his project being used for automatic lecture recording at universities.


  • Trademarks are meant to prevent the abuse of 0MQ name.
  • How are the trademarks to be used?
  • Should the related projects (such as bindings) be steered to use specific naming to guarantee the trademark protection?
  • Pieter Hintjens will write down some guidelines.


  • It would be nice to have a table of all bindings with checklist for features.
  • It was noted that there are to conflicting goals in binding API design: homogeneity between different bindings (so that people can switch easily from one language to another) vs. compliance with language conventions (so that the binding integrates easily with the rest of the language).
  • One possible solution would be to allow 2 layers of API, the lower layer being compliant with C API, the upper layer being customised to suite the language conventions.
  • The "binding guidelines" page should be updated.


  • Martin Lucina referred about the state of the Debian package.
  • Pieter Hintjens asked about joining several projects into a single bundle.
  • Martin Sustrik proposed to host packages for current versions in different formats (source, deb, rpm, msi).
  • Mikko Koppenen proposed signing of packages.

CMake (Mikko Koppanen)

  • Mikko referred about why he would like to switch from autotools to CMake (because of autobuilds)
  • Martin Lucina pointed out that cross-compilation for exotic embedded platforms may be a problem with CMake.
  • Mikko is going to investigate CMake in detail.

Coverage (Ian Barber)

  • 0MQ is easy sell to low latency, multithreading and local networking folks.
  • It's hard to sell to EAI and Web people as there are layers missing on top that those people expect to have.
  • Pieter Hintjens spoke about enterprise messaging. Pieter and Michael Bridgen discussed the idea of implementing the AMQP model on top of 0MQ (MTL).
  • In web environment the question is how to access 0MQ from javascript. Something like tunnelling 0MQ messages through HTTP may help.

Linux Kernel Implementation & standardisation (Martin Sustrik)

  • Report about state of the Linux kernel implementation.
  • Report about standardisation & IETF.
  • Martin Sustrik will set up a group for protocol-related discussion.

Name resolution

  • Pieter Hintjens reported on broker-based model for name resolution.
  • Martin Lucina reminded of the old idea of DNS-based name resolution.
  • ZeroConf and DDNS were briefly mentioned.
  • Martin Sustrik reported on vtcp project (TCP port multiplexing).
  • The conclusion was that all the above are different aspects of the name resolution problem and that more thinking is needed.


  • Martin Sustrik asked whether there are any device projects offering extended functionality (persistence, monitoring).
  • Pieter has written a device project.
  • r0mq bridge allows to use RabbitMQ broker as a device in 0MQ topology.
  • Aside of that we are not aware of other device implementations.

Monitoring (Guido Goldstein)

  • A long discussion about monitoring of queue sizes, number of connections etc.
  • Guido stressed that the monitoring is necessary at every node.
  • Martin Sustrik proposed to strictly limit the resources on the endpoints and do monitoring only in devices.
  • It was acknowledged that monitoring data are fuzzy and should not be used to drive business logic.
  • Possible options for monitoring: syslog, sys://log transport, a network-facing socket, access to monitoring data via API.

0MQ/2 vs 0MQ/3 (Martin Sustrik)

  • Martin Sustrik asked whether 0MQ/3 is worth of the pain.
  • The general feeling was that the cleanup of the API and changes to the wire format are compelling reason to keep 0MQ/3.0