Subscribe to our Erlang Factory newsletter to receive the latest updates and news

An Operating System for the Real World

Paul Valckenaers
Paul Valckenaers

This talk discusses 4 application areas in which Erlang makes a significant contribution: Intelligent traffic and transportation, logistic execution systems, manufacturing execution systems and smart grids.


An introduction to Erlang

Francesco Cesarini
Francesco Cesarini

Erlang Solutions Ltd.
Francesco will be opening the conference by giving a brief introduction to Erlang and its history, and provide a glimpse on its future.


Experiments with MapReduce in Erlang

Tom Van Cutsem
Tom Van Cutsem

Vrije Universiteit Brussel
MapReduce is a programming model for large data processing popularized by, and in daily use at Google. The MapReduce model builds strongly on key tenets of functional programming such as higher-order functions and side-effect free execution. In this talk, we summarize this programming model and describe a didactic implementation in Erlang. Invented at Ericsson's research labs, Erlang is known for its massively concurrent programming model, and itself builds on a functional core language. We assume some minimal knowledge of Erlang, but will highlight key features of the language as needed to understand the MapReduce abstraction.


Morning Bootcamp - Practical Erlang Programming

Francesco Cesarini
Francesco Cesarini

Erlang Solutions Ltd.
This hands on tutorial will give you an introduction to the Erlang programming language. You will learn the basics of how to read, write and structure Erlang programs.
We start with an insight into the theory and concepts behind sequential and concurrent Erlang, allowing you to get acquainted with the Erlang syntax and semantics.

We conclude with an overview of the error handling mechanisms used to build fault tolerant systems with five nines availability.

Delegates who will benefit from this tutorial includes those want to learn more about Erlang and its concurrency model. Attending will put you on the right track in building distributed, fault tolerant massively concurrent soft real-time systems.

In order to get the most out of this tutorial, you must have a good grasp of other programming languages. This will be a hands on tutorial. You will need a laptop with Erlang installed and your favourite editor.

To be able to attend the tutorial, you must have Erlang working alongside your favourite editor. You can download binary snapshots for most OSes here.

If you prefer to compile from source, you can download it here.

It would be beneficial if you can get the Erlang mode running on your favourite editor. The most commonly used editors include Eclipse, emacs and vim, but you will find an Erlang support in most environments. To install Emacs, find the appropriate manu al page in the Erlang documentation. VIM should work out of the box. Eclipse users need the ErlIDE plugin.

If you have time to dabble with Erlang, a great site with simple tutorials is tryerlang.org

Keywords: Erlang, Fault Tolerant Systems, Concurrency, Emerging Languages, Functional Programming
 
Target Audience: Delegates who will benefit from this tutorial includes those want to learn more about Erlang and its concurrency model. Attending will put you on the right track in building distributed, fault tolerant massively concurrent soft real-time systems


Testing what should work, not what should not fail

Samuel Rivas
Samuel Rivas

Interoud
When evolving software we may introduce new corner cases that can pass unnoticed through the test cases in our automated test suite. Since developers rely on other's test suites when changing their code, the more developers work on a module, the more likely it is they slip a bug trough the test suite; that's something we though we had to live with. However, property based testing is emerging as a new hope, our last experiences say that it helps to create test suites more robust to software evolution without forcing us to write tons of "just-in-case test cases."


The Properties of Riak

John Hughes
John Hughes

QuviQ AB
Riak is one of the new breed of no-SQL database management systems, which has begun to replace relational databases for some applications. Riak is a distributed key-value store, inspired by Amazon’s Dynamo, designed for applications where scalability, low latency and high availability are critical. Riak uses replication to provide fast access to data, even when multiple nodes or parts of the network fail. It supports concurrent access to the same data by multiple clients, even when the network is partitioned. All of this makes it very hard to test.

I will show how QuickCheck helped us to model Riak’s behavior, improving understanding and revealing the occasional bug.


efene programming language

Mariano Guerra
Mariano Guerra

The talk will introduce the efene programming language, describe it's history, evolution, reason of existence, current status and future plans.

Some examples of code and code comparisons with Erlang will be shown, together with instructions to fetch and build the project (from source or through rebar) and how you can contribute to the project.

The features that differentiate efene from Erlang will be discussed explaining the reasons of it's existence.

Finally some technical details of the implementation and tools will be described.