Using Elixir to get the fun back in Lego Mindstorms

Torben Hoffmann
CTO at Erlang Solutions

Robots are fun. Programming is fun. Programming Lego robots with the visual environment... well, not so fun. This is the starting point for putting Elixir on the Lego Mindstorms EV3. It ought to be fun to do, but my son and I got lost in the visual environment when trying to do advanced things. After having created a simple EV3 library in Elixir the fun started coming back. This talk is about how the EV3 Elixir library works and how to use it to make robot control software that is easy to write and understand. One of the key building blocks in Elixir - as in Erlang - is processes, and we will have a look at how to design things using lots of processes and how that makes things easier to work with. We start from conceptual architecture and end with elegant Elixir programs. As we go along a visual notation that fits the domain will be introduced showing the benefits of having a small semantic gap between domain, architecture and language.

Talk objectives:

- Show how using lots of processes with asynchronous message passing create super solutions in Elixir.

- Inspire people to hack Elixir on Lego Mindstorms EV3.

Target audience:

Programmers longing for a nice and fun way to work with their Lego Mindstorms.


Torben Hoffman has been working with Erlang since 2006. Currently as Chief Architect for Basho, previously as CTO of Erlang Solutions and before that as technical architect and developer for Motorola and Issuu. By day he is an Erlang priest, by night an Elixir alchemist. He is devoted to protocols as the way of describing and developing non-trivial software. He has worked extensively with process improvement and people management at Motorola before going back to his engineering roots.

GitHub: LeHoff

Twitter: @LeHoff

Back to conference page