Build Your Own Real-Time Web Service with Elixir/Phoenix: Assenty Show and Tell


Here are the slides from my recent talk at Manchester Lambda Lounge.

Aimed at a largely non-Erlang/Elixir audience, the talk was about the soft real-time aspects of Elixir/Phoenix and its WebSocket implementation (aka Phoenix channels) – the main inspiration behind the real-time Q&A web service at

Manchester Lambda Lounge, in their own words,

“meets monthly to talk about and popularise new ways of thinking about computation. Frequent topics include functional programming, type systems, programming language design and aspects of computer science.”

As Elixir is still relatively new, and case study materials on the Phoenix web framework thin on the ground, I focused on explaining the core components of the web framework with an emphasis on Phoenix channels and, the rationale behind Phoenix and Elixir.

The presentation concluded with a live demo of Assenty. Here is the resultant question board which includes questions asked and answered live by the audience.

I’ve embedded the question that won Gold Question Award below!

It was a good opportunity to meet active members of Manchester’s growing functional programming community to talk code and I look forward to attending another event.

Meet Assenty, the Elixir Phoenix-powered social Question Board service


I started learning Elixir nearly two years ago and love the concurrency, fault-tolerance and scalability paradigms its Erlang heritage brings to the table. I discovered Phoenix in early spring 2015 when I was looking for Chicago Boss with an easier learning curve 🙂 For the non-developers reading this, Chicago Boss is a web framework for the Erlang programming language. Erlang is not renowned for its learning curve but is acclaimed for its reliability. Just ask WhatsApp.

I digress…

Today, after nearly seven months of hard work in stealth mode, I’m thrilled to launch Assenty, a service I’ve built with Elixir to provide real-time Q&A support for event organisers, using Phoenix channels.
Continue reading