Cloudbees, a Java-focused PaaS, takes advantage of a whole bunch of different tools to run their service. One of the more intriguing ones is a programming language that was designed at the Ericsson Computer Science Laboratory: Erlang.
This language was developed in the '80s, and was originally intended to create systems for telecommunications companies. Like many other programming languages that branched out, Erlang to this day is actually widely used and its community is on the rise. It went through a sort of resurgence when the use of multi-core CPUs started to grow. But would you want to use a retro language from way back then? Many are drawn into Erlang's major strength: its ability to construct reliable systems.
The guys over at Cloudbees say they use it mainly in a couple of places:
- Agents: little semi-autonomous agents that look after what is running on a server
- Taskmaster: a service for managing long-running tasks and retries (rate limiting, throttling, etc.)
- Autoscale: track sliding windows of statistics, trigger scaling events
- DNA: tracks "definitions" of servers - single source of truth for configuration
Don't you think it's time to give Erlang a try?