Nomadic Labs
Nomadic Labs
Meanwhile at Nomadic Labs #3


Another update on the many projects we have been busy working on. Most of the following topics will be subject of more in-depth posts of their own.


The consensus team is finishing their analysis of selfish baking on Emmy+ and tweaking the constants of the protocol accordingly. At the same time work on our version of Tendermint is progressing to the point of having a proof of concept protocol to play with.

The protocol team has been steadily reviewing and testing all the MRs that are flowing in the branch proto-proposal. Particularly the excellent work of Cryptium Labs on the account re-haul (implicit accounts, removing script-less contracts) and the tweaks to the voting procedure (quorum caps, proposal quorum).

The Michelson team has been busy too with quite a lot of changes that we’ll blog about soon. For a quick sneak peek:

  • Smart contracts will have multiple entrypoints, implemented in a way that is not too intrusive and that is retrocompatible (provided that they conform to the entrypoint convention, contracts that get deployed now will take advantage of multiple entrypoints if and when the update is rolled).
  • Most restrictions on the big_map type got lifted.
  • New instructions have been introduced to help large contracts (in particular compiled from higher level languages) stay compact and efficient: new deep stack access instructions and an instruction to partially apply a lambda.
  • The gas cost model for instructions has been refined, based on benchmarks.
  • Some instructions have been updated or deprecated according to the account re-haul.


The shell is looking at an interesting summer update with a new storage back-end from Tarides, that is currently benching and fine tuning the performance of their code.

The mempool team is slowly but steadily merging the huge amount of work that they have been doing in the last 6 months. Most of the effort is being devoted to testing the new mempool against spam attacks which is a rather complex task.

Finally there are small improvements to the p2p layer that will improve connectivity, network topology and peer discovery.


We are close to the release of our own tezos-indexer, an improved iteration over the previous project Mezos, which will serve as base for our mobile wallets, Cortez for Android and iOS, and many future projects.

The first project from one of our interns is almost ready for release, Try Michelson. You can now run a Michelson contract in a friendly web interface without needing to run a node. Try Michelson is already proving to be a great tool to teach newcomers how to write smart contracts.

The work continues to compile as much as possible of the Tezos code base to Javascript. The precision surgery to remove all Unix dependencies, tweak the OCaml signatures, write bindings and compile C libraries to WASM is progressing steadily and will soon allow to reuse a huge amount of code for the applications built around Tezos.


Work has started to refresh our version of the HACL* cryptographic library which will provide a verified implementation of curve P-256 (tz3 addresses) on top of the existing Ed25519.

Moreover our new binding for the ZCash Sapling library is almost done and we are starting to experiment with it for a future protocol proposal.


A few nomads were also spotted to some events recently. We were happy to help Chain Accelerator during a recent week long training session on Tezos and we lent a hand at the Swiss Blockchain Hackathon in Zurich.

Next week we are conducting a Tezos tutorial at HPCS‘19 and a few devs are also preparing for the next masterclass organized by TSA that will take place next week in Vietnam. Looking forward to it!

How to write a Tezos protocol

A Tezos node is parameterized by a software component called an economic protocol (or protocol for short). Different protocol implementations can be used to implement different types of blockchains. This is the first post of a tutorial series on how to implement such a protocol. We will see how to write, compile, register, activate and use an extremely simple protocol. By doing so, we will also start to explore the interface between the protocol and the node (more specifically the shell component of...

Read More
Emmy+: an improved consensus algorithm

Underlying the Tezos network is a consensus algorithm, which, for the ease of reference, we will call Emmy. Consensus ensures that participants agree on the same blockchain and on its state. The ideas behind Emmy are described in the white paper and the specifics to its implementation can be found in the documentation. We recall that Emmy is a PoS based consensus with a use of endorsements to speed-up confirmation times and reduce...

Read More
Release of Mainnet May

Today we are proud to announce a new release of the Tezos node and client. The main features present in this release are: node support for snapshots (boot and synchronize a node in minutes), node support for new history modes (not everyone needs to be an archive), client integration for a multi-signature contract. Remember that besides major features there are always a myriad of smaller improvements, have a look at the changelog. We encourage bakers to switch to history mode “full” using a snapshot before the activation of...

Read More
Athens on the testchain

The quorum for the second voting phase has been reached, with a supermajority of Yays! This means that the voting procedure can proceed to its third stage: the test chain for Athens is going to be launched soon, approximately Friday April 12th. To accompany that, we just released a new version of the Tezos node and its baking daemons. This release includes many improvements, most notably a new --enable-testchain option. Users who want to participate in the test chain should upgrade...

Read More
Meanwhile at Nomadic Labs #2

The last few weeks have been pretty intense at Nomadic with the preparation of the first community voted upgrade! The team has been working hard on some special future improvements to Tezos… Improvements to the consensus layer Tezos has the unique ability to amend itself which allows us to propose state of the art research to the network at any time. This is not a far fetched ideal and will happen sooner rather than later in a series of new efforts...

Read More
Athens: Second Voting Period

As we approach the completion of the first active voting period, the proposal period, we would like to describe what’s to come during the second voting period. The first voting period saw the Athens protocols injection and bakers upvoted Athens A and/or Athens B, with Athens A, the most popular proposal, promoted for the second voting phase: the test voting period. In this new period, participants are asked to vote on whether to advance Athens A to the next stage: the...

Read More
Athens: Proposals Injected!

Today marks an important milestone for Tezos. We just triggered the beginning of the first on-chain vote for self amendment. This process could end in the successful migration from current protocol alpha to Athens in about three months, if the participants decide so. As advertised in the last meanwhile at Nomadic and as detailed in our previous post, we injected the hashes of two proposals. Both include the same enhancements except for one: the decreased amount in the number of tokens needed to...

Read More
Athens: Our Proposals for the First Voted Amendment

This blog post is a preview of Athens: our protocol proposal for the first voted upgrade of Tezos. As announced in the last meanwhile at Nomadic, we shall propose two upgrades: one lowers the roll size to 8,000 tez, the other leaves it unchanged at 10,000 tez. Both alternatives will include an increase of the gas limit. The hashes of both versions will be proposed on mainnet later this week, now that a new proposal period has begun. Later this week, we will publish a...

Read More
Amendments at Work in Tezos

We are now on the verge of submitting a protocol upgrade to a vote, and it seems like a good opportunity to explain in details the way in which Tezos node handles amendment in practice. Brace yourselves, this article is quite technical, as are all articles in our in-depth category. Still, as we did in the previous one on snapshots, we’ll try to explain the stakes and announcements and give a brief summary in a short foreword understandable even by non-programmers. The original whitepaper...

Read More

Receive Updates