3 ms·
And not to diminish Jose's work, but a lot of it was a coat of paint -- read the Kernel module, where most of the language core is located, it's pretty much ent
by _asummers 10y ago
And not to diminish Jose's work, but a lot of it was a coat of paint -- read the Kernel module, where most of the language core is located, it's pretty much entirely macros. Most of the code in setting up the language, outside of the standard lib, was bootstrapping the macro processor. The better docs, build system, package manager, etc. were all just icing on the cake to make it a 21st century language, with Phoenix as the cherry on top.
- qaq 10y agoI am in no way equating a 20 year effort by Erlang team to that of Elixir team. But I think Elixir is making the whole ecosystem much more accessible. I once tried to bring Erlang into our shop about 6-7 years ago but could not get the team excited about it, with Elixir we will be going into production this Fall and everyone loves it.
- _asummers 10y agoFor sure, I wasn't trying to suggest you were. I guess the point I was trying to make without actually saying any of these words is that it's really interesting that the same ecosystem with a few extra things had that effect. I always liked the idea of Erlang and I've read Joe's thesis and stuff, but never could be bothered to learn the language because it felt niche, and same as your coworkers, we're all really excited about Elixir.
- maxarturo 10y agoHow much does your team get into actual Erlang/OTP code? I'm wondering since I'm taking the long route, learning Erlang/OTP first and a distinct second for Elixir. Is this not optimal?
- qaq 10y agoI think that's optimal but for us it was more people getting into Elixir first and starting to dig in into Erlang/OTP. basically Programming Elixir -> Promgramming Phoenix -> Elixir in Action -> Designing for Scalability with Erlang/OTP
- _asummers 10y agoSee also: Little Elixir and OTP Guidebook. Currently reading that book, it's good so far.
- sotojuan 10y agoAbout to finish it myself, also very good! Elixir in Action's second part moved a bit too fast for me, but I'll revisit after I am done with Guidebook.
- andy_ppp 10y agoThe thing that constantly gets me about Elixir and Phoenix is the default tends to be the correct way of doing it. Let me explain. For example, the other day, I was looking at filtering a next parameter to remove the domain... however it's unnecessary as redirect/2 in phoenix if passed a URL rather than a path will throw an error by default. As an aside different exceptions will return different HTTP error codes - for example a database not found exception from Ecto will cause a 404. There are hundreds or thousands of these little decisions that are the correct/simpler decision. Elixir and Phoenix, for want of a better way of saying it, show great programming taste. So to say it's a coat of paint is a bit harsh; it's the right coat of paint, in my opinion.
- _asummers 10y ago> Elixir and Phoenix, for want of a better way of saying it, show great programming taste. So to say it's a coat of paint is a bit harsh; it's the right coat of paint, in my opinion. Fair enough. On rereading my comment, it came off more brash than I intended. I completely agree with this statement.