Francesco Cesarini

Co-author of Designing for scalability with Erlang/OTP

Founder of Erlang Solutions Ltd. Francesco has used Erlang on a daily basis since 1995, starting as an intern at Ericsson’s computer science laboratory, the birthplace of Erlang. He moved on to Ericsson’s Erlang training and consulting arm working on the first release of OTP, applying it to turnkey solutions and flagship telecom applications. In 1999, soon after Erlang was released as open source, he founded Erlang Solutions, who have become the world leaders in Erlang based consulting, contracting, training and systems development.

Francesco has worked in major Erlang based projects both within and outside Ericsson, and as Technical Director, has led the development and consulting teams at Erlang Solutions.

He is the co-author of 'Erlang Programming' and 'Designing for Scalability with Erlang/OTP' both published by O'Reilly. Francesco is also a lecturer at the University of Oxford, and has participated in the Future Learn Erlang MOOC, O'Reilly and University of Kent online Master Classes and is a regular conference speaker and tutor.

Upcoming Activities

Francesco Cesarini
Code BEAM Lite ITA
Tutorial/ 29 Oct 2020
09.00 - 17.00

Thinking concurrently

How do systems built in Erlang, Elixir or any other BEAM Language differ from other systems?


To start with:

  • They are designed from the bottom up to run 'forever.’
  • They are designed from the bottom up to expect, and recover from errors.
  • They are expected to evolve.
  • They scale seamlessly.

How is all of this achieved? - the answer is simple - by making systems from sets of isolated communication processes, and by treating errors and code as first class objects that can be sent in messages over a network.



In this tutorial, we'll introduce what is called the "Erlang way of thinking."

We'll cover:

Basic data types and sequential programming

Introduce the foundations and talk about Modules, Functions and Pattern Matching. Once you've understood the basic pattern matching mechanism the rest is easy.

Concurrent programming

We'll look at sending and receiving messages, selective reception, and passing data in the messages.

We'll conclude this section by introducing the simple but powerful error handling mechanisms in processes which help detect and isolate failure.

Time permitting, we will conclude with distribution, showing you how by doing it right from the start or with very few changes, you can write a program intended to run on a single VM and distribute it in a cluster.



Developers and architects who are interested in the principles which make Erlang, Elixir or other BEAM-based languages unique.



To learn the Erlang way of thinking when architecting and developing systems.

Past Activities

Francesco Cesarini / Veronica Lopez
28 May 2020
15.15 - 15.45

The Future of Programming

Whilst Erlang has been ahead of the curve for decades, other communities and technologies are quickly catching up, but not always in the most efficient way. In this talk, Francesco and Veronica share their experiences on the past, present and future of distributed software development in the Erlang Ecosystem. By looking at how systems which by nature were distributed and learning from past mistakes, they map out the evolution of where we are heading, and what we need to do to get there.

Francesco Cesarini / Sebastian Strollo
29 May 2020
13.25 - 13.55

An update from the Erlang Ecosystem Foundation working groups

Francesco Cesarini
05 Mar 2020
17.10 - 17.55

Updates from the Erlang Ecosystem Foundation working groups