The Week Around These Parts

Went by in a blur, really.

The good news is that I’m doing a fair amount of simple but idiosyncratic back-end services and enjoying it tremendously.

They’re mostly done in Python, of course, but since a couple of them may need a little more oomph I’ve also been giving another look at Erlang – this time under the guise of Elixir.

The beauty of Elixir is that it sweeps all of Erlang’s syntactic noise under the rug1 and makes it look a lot like Ruby. But it’s a niche within a niche, and as a result still somewhat obscure and thus a lot harder to get to grips with in practical terms – there’s comparatively very little documentation, samples, etc.

Dynamo (their web framework) is nice and straightforward, but since I’m basically doing REST APIs with JSON these days the lack of a native JSON library is annoying – I suppose I can use a “work in progress” library I found or call out to any of the Erlang implementations2, but I’d rather not, really.

Plus I really don’t have the time these days, so I’m delving deeper into gevent land and deploying stuff with gunicorn whenever I can3 – the results are satisfying in terms of both developer time and CPU time, and that’s good enough for me right now.

But since I’m never happy with “good enough”, I envision a few long nights ahead…

  1. I can read Erlang code without much effort, but writing it is another matter altogether. The profusion of colons, tildes, angle brackets and whatnot makes it too cumbersome to type, and I can’t help it but think that the thing’s too prickly to feel elegant, whereas Elixir is a lot easier on the eye. ↩︎

  2. Intriguingly, Erlang was supposed to get built-in JSON support, but it’s not on the newly released 16B and I can’t find a schedule for it. ↩︎

  3. Alas, I still have to put up with systems running versions of Debian that ought to feature on the fossil record, so that’s not really possible everywhere… ↩︎

See Also: