Our digital fabric has doubled in size every 18 months since 1950, and will continue this growth for the next 100 years. Future code is massively distributed, or it is dead. And beneath this future code lies a sea of protocols and transports. Writing good protocols is hard. Protocol design may sound like boring work for committees, yet it's one area where individuals or small teams can beat massive corporations, and revolutionize entire markets. Pieter has been writing successful protocols since creating AMQP a decade ago. In this new talk, exclusively for Code Mesh, he'll explain the most powerful and secret techniques of successful protocol design.
Talk objectives: Designing a successful protocol is as much a question of political strategy and tactics as it is a matter of technical accuracy and relevance. Most good protocols still die due to interference or capture by hostile parties -- the Cheats and Liars of the title. A successful protocol has to eliminate such threats from the start. This talk will aim to teach these strategies and tactics, from first principles, with worked examples. It will then cover technical measures, including lifecycles, versioning, modeling, code generation, implementations, community building, and so on.
Target audience: The audience should appreciate the value of protocols in a distributed world, and want to improve their own ability to design new protocols, as well as consume existing ones. The audience will mainly be architects and developers of distributed software, running on any language or platform. Pieter will use ZeroMQ as an example framework for protocol development. However, the principles apply widely to all kinds of fabric.
In this tutorial, Pieter will teach you the principles of distributed development, using ZeroMQ as a basis, and the ZeroMQ C4.1 process as template. You'll learn how to organize in a decentralized team, to build a sophisticated service-oriented architecture.
The tutorial will teach you as much about decentralized process as about decentralized code. Rather than design, and then build a system, you'll learn how to grow a system through rapid cycles of protocol design and code implementation.
The tutorial is aimed at developers who already know ZeroMQ, or who have an interest in building successful distributed teams, and organizations. Participants must at least have ZeroMQ working on their laptops and be able to run a basic Hello World application, in any language.
Pieter Hintjens started his first business making video games 30 years ago and has been building software products since then. Believing that, "the real physics of software is the physics of people", he focuses on building communities through "Social Architecture", writing, and building his businesses. He is the lead maintainer of ZeroMQ, and CEO of iMatix Corporation. Pieter speaks English, French, Dutch, and pieces of a dozen other languages. He plays with a West African drum group in Brussels, is a certified pistol instructor in Texas, and is currently learning Korean. He lives with his lovely family in Brussels, Belgium but travels extensively for work.