> if you ever used Django, raise your hands if you've ever had to delve into the source code to understand what is going on
This is a sentiment I don't understand at all. Why wouldn't you delve into the source code of tools you use? I do this with almost all the tools I use, be it languages or libraries (obviously I don't use non-opensource ones if I can avoid it). Looking inside libraries teaches you quite a lot and isn't even that difficult, especially if your editor+language combination support "Jump to Definition".
I think we'd be much better off, as an industry, if people learned to appreciate code reading. This would make writing readable code more desirable in the first place, which would be really great.
And BTW, Django has a really good looking codebase. You shouldn't start your reading with SQL compiler in the ORM, but, for example, class-based and generic views are a nice starting point. Another related codebase I can recommend is Django Rest Framework - really a must read for pythonistas who use Django.
> using large libraries feels too much like magic
That's actually my biggest gripe with Elixir. The fact that it happens on compile time (using) and not at runtime doesn't make its magic less magical. And it's very often not documented appropriately. The docs or examples tell you to `use` a module and that's it - you don't know what symbols are imported, let alone what the module macros will do with your code. And it's hard to tell by just looking at the module in question, because - macros. I can deal with it, but in general Elixir should either document its macros better or make things much more explicit.
> I've had a fling with Go, I really like some of its ideas, namely static linking, native compilation, no exceptions, easy deploy
Take a look at OCaml. All the features you mention and a non-brain dead type system on top of that. Multicore is a problem, but I hear it's improving fast.
> It's a mix between Haskell without purity and types and Clojure without parens, with a Ruby-style syntax and a battle-tested framework for concurrency and distributed computing.
That's probably the least flattering description of Elixir I've ever read. Haskell without purity and types would be utterly broken and useless. Similarly for Clojure and sexps. Elixir is neither - it is a nice langauge in its own right.
> I know I talk like a fanboy [...]
Well, I like Elixir too, there's nothing wrong with it. Really, Elixir has many nice features and a great potential; it's still growing, I think, and needs a bit more time to really mature, but is a viable choice for some projects already.