Each year we host around half-a-dozen interns (stagiaires), for periods of two to six months. These young men and women are usually studying or have just finished studying for undergraduate or Master’s degrees, and are eager to gain experience in the blockchain industry. Each has a unique story to tell about their individual interest in this technology.
In this blogpost, we will ask three questions of one of our current interns: Étienne Marais (and a couple of questions of his mentors at Nomadic Labs).
Étienne — so happy to have you with us! We hope you’re having a wonderful and educational period with Nomadic Labs. We’d love to hear a bit about you and your activities chez nous …
My name is Étienne Marais, I’m 24 years old, and I live in Paris. I’ve been an OCaml enthusiast for 4 years now! I’m really interested in the free software movement and the open source community. I studied undergraduate computer science at Paris Diderot University from September 2016 to August 2019. Then, I started a two-year master’s degree at Université de Paris (former Paris Diderot University) in September 2019, and I’m now in my last year. My studies are mostly on programming languages, especially functional programming and compilation.
I got my interest in OCaml and blockchains from a pair of summer internships: two months in the summer of 2018 with IRIF (Research Institute on Fundamental Computer Science) showed me OCaml; then two months in the summer of 2020 with the OCaml Software Foundation working on the Learn-OCaml platform brought me into contact with the Tezos ecosystem and Nomadic Labs. I learned about blockchains and the possibilities they offer for decentralization, self-governance and transparency.
I’m concerned about global warming and ecology, so how blockchains deal with their energy consumption is an important issue to me. To answer it, I’ve dug further into the subject and learned about the difference between Proof of Work (which by design consumes a lot of energy) and the Proof of Stake (which consumes less energy, and is what is used in Tezos).
2. Tell us more about your internship: main subject, who is your mentor, what you have learned and especially, what surprised you the most within these months?
In March 2021, I started an internship with Victor Allombert, Julien Tesson and Mathias Bourgoin on the energy consumption of Tezos. There are two goals:
- To provide the Tezos community with tools to monitor the energy consumption of their live Tezos nodes.
- To develop a benchmarking tool which will allow developers to profile the energy consumption of a Tezos node while performing various standard functions in the lab (i.e. under controlled and replicable conditions), such as baking a block or executing a simple smart contract.
This internship is really challenging and stimulating, for two reasons:
Firstly, it has pushed me deeper in the OCaml world, and it’s really thrilling to see the capabilities of the language in such a big project. Discussing with other developers about how the tools I’m writing could be integrated into the actual workflow is amazing, because they always have good suggestions and help me improve the quality of my work.
Secondly, profiling computer performance is not new, but optimising the energy-efficiency of computer systems (some call this green computing, or ICT sustainability) is a relatively recent field of research. There are few precedents for this and we have to build the tools we need from scratch. It’s really stimulating to work with my mentors to try to produce a tool which is as accurate as possible.
I’m amazed by the technologies used to make a blockchain work, and how every person on the project is important to make the project succeed. It is exciting to be part of such a big project and make contributions to it.
3. Why did you choose to become a part of the blockchain ecosystem and Nomadic labs? What are your plans after completing this internship?
I decided to join Nomadic Labs because people working here are close to the research world. Many of them have a PhD, so they are used to sharing their knowledge with others, and this creates a healthy place to learn the skills to develop a blockchain ecosystem. Furthermore, they belong to the OCaml community, so I get to learn about the design of those libraries in the ecosystem that they maintain.
I wouldn’t have called myself a blockchain enthusiast before starting my internship with Nomadic Labs, but now I’ve discovered that blockchain is a technology that exists at the intersection of many important fields, including formal verification, networking, and concurrency — and with broad applications that are not limited to finance.
After the internship, I will leave Nomadic Labs as I want to discover other companies, but I intend to join another company working on Tezos, and to continue helping develop the OCaml ecosystem.
Through regular meetings and spontaneous questions, we discuss, exchange and propose various solutions and ideas to solve our problems. This guides Étienne toward the implementation of prototypes that we validate and improve together over time, leading to viable implementations.
There’s no point in building a technology nowadays unless it’s green. Unlike Proof-of-Work blockchains, Tezos’ Proof-of-Stake inherently requires much less energy and cost to operate, but we need to back this up and optimize performance using concrete figures. Fine-grained performance monitoring is necessary to understand the energy consumption of a node, and thus of the network overall. Thanks to such tools and metrics, we can continuously reduce the ecological (and economic) footprint of Tezos.