Modern Erlang for Beginners
What you'll learn
- Learn Erlang concepts
- Get introduced to OTP (Open Telecom Platform)
- Become an Erlang developer
- Build a real application in Erlang
- Understand process supervision
- Start using Erlang in a distributed environment
- You should know how to program in at least another language
Modern Erlang for Beginners provides a thorough introduction to the Erlang programming language from the very basics to building your first Erlang/OTP application.
This course takes a very structured approach of teaching Erlang. The screencasts show you how to get started, in a gradual journey from understanding basic concepts such as pattern matching, to writing your first OTP application. You will learn how to use behaviours to build supervised and distributed systems, through clear examples and detailed explanations.
After an introduction to Erlang syntax and data structures, you will learn about recursion, pattern matching, immutability, map/reduce, guards, and different ways on how to improve code readability. You will learn how to spawn processes and how links and monitors work, which will serve you to understand supervision of Erlang processes.
You will then be introduced to Distributed Erlang, i.e. how to create an Erlang cluster and how to make processes communicate across different machines.
Finally, we will create an example application (a bank) to understand how all of the previous concepts are linked together. First, we will build this example using standard processes and messaging, but then we will refactor our application to use OTP, the standard Erlang libraries and design principles which are the basis for building robust systems in Erlang (so behaviours like a gen_server and supervision trees).
Why Erlang? The Erlang runtime system is known for its designs that are well suited for systems with the following characteristics:
Highly available (non-stop applications)
Support Hot Code swapping (code can be changed without stopping a system)
Who this course is for:
- Developers that want to get started with Erlang
- Elixir developers that want to understand Erlang better
Hello! I’m Roberto Ostinelli.
I've been using Erlang professionally for more than a decade, building massively scalable systems.
I’m a musician, photographer, Erlanger and Rubyist. I have been professionally active in a variety of fields, more specifically in the research, development and integration of the multiple technologies behind the creation of ubiquitous computing. I’m fond of agile practices focused on test-driven development, pair programming, short development cycles and continuous verification and integration of code, and more in general the development methodology known as Extreme Programming.
Investing in the Internet of Things, I’ve been co-founder and CTO of the company WideTag Inc, one of the first ever Internet of Things company, back in 2009, and in the last years Director of Cloud Services at Neato Robotics.
I currently consult to help companies achieve their connectivity goals by architecting and implementing their infrastructure and protocols, and I train developers to build massively scalable systems with Erlang and Elixir, by ensuring the adoption of TDD and Agile methodologies.