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

Standard

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.

It is designed to help anyone running an event, physical or virtual, accept questions and votes from an audience. It’s easy to use, simply sign up for an account on assenty.com and register your event details to get a permalink to the Question Board for your event. Cost wise, it is free to register your first event, after that it costs £1 per event.

It’s early days yet but there’s much to be excited about: I was impressed by the speed with which Phoenix handled calls to and from the database across the various channel interactions baked into Assenty and without breaking a sweat.

The Assenty dashboard got a lot of care and attention and I’m pleased with how it turned out – again, writing in Elixir and working with Phoenix was a joy; I really like the attention to detail the core Phoenix team put into handling the basics – templates, routing, models, changesets, plugs! Plugs!! I cannot recommend Plugs highly enough but that’s the subject of a future blog post.

As much as I’m grateful for what I’ve been able to achieve on my own, Assenty could do with some stress testing and I encourage the Elixir community to try it out and put it through its paces.

As solo developer, UIX designer, QA tester, product owner etc etc I was a bit constrained for time when it came to concurrency testing, so I’m particularly interested in seeing how Ecto 2.0 handles multiple users voting and submitting questions to the same Question Board.

I’m a relative newcomer to benchmarking but have seen the 2 million simultaneous users blog post for Phoenix, and most recently, the Phoenix vs Rails 5.0 Action Cable show down. Maybe we can try to break some records with Assenty. If you’re interested in helping, please let me know!

As far as future plans go, there’s a mobile app in the works for Assenty but I’m keen to see how people use the web app first. A couple of features have been intentionally left out of this release but event organisers can reward questions posted to their event with some rather dashing Question Award badges. Do have a play with it. Any problems or issues, please drop me a line on the Assenty Slack channel (here’s how to join) or tweet @assentyapp.

Let me know what you think!