Any Erlang Devs Contemplating Elixir?

classic Classic list List threaded Threaded
53 messages Options
123
Reply | Threaded
Open this post in threaded view
|

Any Erlang Devs Contemplating Elixir?

Andrew Berman
Hey Fellow Erlangers,

I was curious if any of you guys have switched or are contemplating using Elixir for your next project. I've been programming Erlang for a while now, but I'm about to start a new project and wanted to see where other Erlang devs stood on it.

Thanks,

Andrew

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Garry Hodgson-2
I've looked into Elixir a bit, but haven't found anything compelling
to make me switch. The "friendly" syntax doesn't appeal, and seems
to add new warts to replace the old ones in Erlang. Perhaps if I was
new to both, I might be inclined toward Elixir since it's less foreign
than Erlang syntax. Kinda feels like Erlang with training wheels.

On 02/26/2016 01:28 PM, Andrew Berman wrote:
Hey Fellow Erlangers,

I was curious if any of you guys have switched or are contemplating using
Elixir for your next project. I've been programming Erlang for a while now,
but I'm about to start a new project and wanted to see where other Erlang
devs stood on it.

Thanks,

Andrew



_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions


-- 
Garry Hodgson
Lead Member of Technical Staff
AT&T Chief Security Office (CSO)

"This e-mail and any files transmitted with it are AT&T property, are confidential, and are intended solely for the use of the individual or entity to whom this e-mail is addressed. If you are not one of the named recipient(s) or otherwise have reason to believe that you have received this message in error, please notify the sender and delete this message immediately from your computer. Any other use, retention, dissemination, forwarding, printing, or copying of this e-mail is strictly prohibited."

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Garrett Smith-5
In reply to this post by Andrew Berman
I just started a new project and momentarily had a very short thought that I might use Elixir. My crusty old engineering persona took over and started asking questions like, "why would you do that?" - then I got back to work building software.

I strongly prefer the Erlang syntax over Elixir, especially for actual functional programming.

I've have had a problem getting colleagues to adopt into Erlang, and I believe I have a handle on why [1]. I think there are some solid answers to "why use Elixir" if you're considering the problem of adoption. If you are working alone or in a small team that is already proficient using Erlang, I personally would just go and start your work and be happy you aren't being forced to use Java, or Ruby, or Node.

How many bridges did I burn here?


On Fri, Feb 26, 2016 at 12:28 PM Andrew Berman <[hidden email]> wrote:
Hey Fellow Erlangers,

I was curious if any of you guys have switched or are contemplating using Elixir for your next project. I've been programming Erlang for a while now, but I'm about to start a new project and wanted to see where other Erlang devs stood on it.

Thanks,

Andrew
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Andrew Berman
Hey Garrett,

I've watched your talk a couple times before, great stuff, thank you for posting that.

Yes, I'd say that adoption is definitely something I am concerned about.  I have to sometimes put on my technical hiring hat and step back from the fact that I think Erlang is incredible and that I don't have an issue with the syntax.  However, I am going to eventually try to build a team (ideally very lean like WhatsApp) and with lots and lots of devs familiar with Ruby or Javascript and their related tools and frameworks, Elixir seems like a stepping stone for those devs into the Erlang world.  I totally agree with many on this list that a great programmer can learn any language, but sometimes it's difficult to find those people in a reasonable time frame, especially when you're trying to light things up quickly as a startup.

I definitely have not counted out moving forward with Erlang, which is really why I just wanted to get a sense of what people on this mailing list thought of Elixir.  I'm leaning towards Erlang because I know that I personally can move quicker, but it can't always be about me :-)

On Fri, Feb 26, 2016 at 10:44 AM Garrett Smith <[hidden email]> wrote:
I just started a new project and momentarily had a very short thought that I might use Elixir. My crusty old engineering persona took over and started asking questions like, "why would you do that?" - then I got back to work building software.

I strongly prefer the Erlang syntax over Elixir, especially for actual functional programming.

I've have had a problem getting colleagues to adopt into Erlang, and I believe I have a handle on why [1]. I think there are some solid answers to "why use Elixir" if you're considering the problem of adoption. If you are working alone or in a small team that is already proficient using Erlang, I personally would just go and start your work and be happy you aren't being forced to use Java, or Ruby, or Node.

How many bridges did I burn here?


On Fri, Feb 26, 2016 at 12:28 PM Andrew Berman <[hidden email]> wrote:
Hey Fellow Erlangers,

I was curious if any of you guys have switched or are contemplating using Elixir for your next project. I've been programming Erlang for a while now, but I'm about to start a new project and wanted to see where other Erlang devs stood on it.

Thanks,

Andrew
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Loïc Hoguin-3
In reply to this post by Andrew Berman
On 02/26/2016 07:28 PM, Andrew Berman wrote:
> Hey Fellow Erlangers,
>
> I was curious if any of you guys have switched or are contemplating
> using Elixir for your next project. I've been programming Erlang for a
> while now, but I'm about to start a new project and wanted to see where
> other Erlang devs stood on it.

People end up choosing Elixir for one of two reasons:

- they identify with the Ruby-like syntax that they find familiar,
comforting or perhaps cool (it will always be a different reason for
everyone because behavior related to identity isn't rational). They
probably are/were Ruby developers or like Ruby.

- they require a feature that only Elixir provides. Survival.

Considering most Elixir developers come from Ruby (because of the first
point), Elixir has the most effort going into Web-development related
libraries, and so people coming because of point number two will most
likely use it for Web stuff (or Unicode, but it's usually Unicode for
Web stuff).

(Some people are probably not going to be happy about me making the
above observation, but Elixir would grow a lot faster if they made use
of this instead of fighting it. The best way to make Elixir get big is
to advertise it as a better faster Ruby on Rails. Forget other
languages. Forget about Erlang. Just target Ruby people.)

Personally I don't really care about it. I am irrationally put off by
the syntax the same way I am irrationally put off by the Ruby syntax.
But even if I wasn't, it doesn't have any particular feature that would
make me want to use it. I guess you could use it to write DSLs, but LFE
is probably a better choice for that, in part because calling LFE from
Erlang is much easier than calling Elixir from Erlang, due to using the
same conventions for modules and types.

In the end it doesn't really matter. Use what works for you. Some people
are horrified by Perl, and yet there's still some large Perl codebases
out there, because it works for them.

On a related note, if you ask someone why they choose one or another
tech, you will almost always get completely different answers. The
reason is that the choice is rarely rational. When the choice *is*
rational it's because it wouldn't work with any other tech. But it's
rare because you can do most things in most languages. Same applies to
DBs, OSes... So people make the choices they identify best with (and
some people make a different choice every week because they identify
with tech that makes the most noise).

(Been talking about identity a lot recently, because I've been reading a
lot about it. The world makes a lot more sense when you realize *and
accept* that people are not rational, myself included.)

--
Loïc Hoguin
http://ninenines.eu
Author of The Erlanger Playbook,
A book about software development using Erlang
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Garry Hodgson-2
In reply to this post by Andrew Berman
In my experience, it isn't the syntax that's hard to learn,
but the concepts. and since most learning material is
(at least so far) in Erlang, having to mentally translate
that to Elixir would seem to make it harder, not easier.

But I may not be representative. Last time I counted I've
used around 40 languages in anger over the years, yet
I find Ruby bewildering.

On 02/26/2016 02:18 PM, Andrew Berman wrote:
Hey Garrett,

I've watched your talk a couple times before, great stuff, thank you for
posting that.

Yes, I'd say that adoption is definitely something I am concerned about.  I
have to sometimes put on my technical hiring hat and step back from the
fact that I think Erlang is incredible and that I don't have an issue with
the syntax.  However, I am going to eventually try to build a team (ideally
very lean like WhatsApp) and with lots and lots of devs familiar with Ruby
or Javascript and their related tools and frameworks, Elixir seems like a
stepping stone for those devs into the Erlang world.  I totally agree with
many on this list that a great programmer can learn any language, but
sometimes it's difficult to find those people in a reasonable time frame,
especially when you're trying to light things up quickly as a startup.

I definitely have not counted out moving forward with Erlang, which is
really why I just wanted to get a sense of what people on this mailing list
thought of Elixir.  I'm leaning towards Erlang because I know that I
personally can move quicker, but it can't always be about me :-)

On Fri, Feb 26, 2016 at 10:44 AM Garrett Smith [hidden email] wrote:

I just started a new project and momentarily had a very short thought that
I might use Elixir. My crusty old engineering persona took over and started
asking questions like, "why would you do that?" - then I got back to work
building software.

I strongly prefer the Erlang syntax over Elixir, especially for actual
functional programming.

I've have had a problem getting colleagues to adopt into Erlang, and I
believe I have a handle on why [1]. I think there are some solid answers to
"why use Elixir" if you're considering the problem of adoption. If you are
working alone or in a small team that is already proficient using Erlang, I
personally would just go and start your work and be happy you aren't being
forced to use Java, or Ruby, or Node.

How many bridges did I burn here?

[1] https://www.youtube.com/watch?v=3MvKLOecT1I

On Fri, Feb 26, 2016 at 12:28 PM Andrew Berman [hidden email] wrote:

Hey Fellow Erlangers,

I was curious if any of you guys have switched or are contemplating using
Elixir for your next project. I've been programming Erlang for a while now,
but I'm about to start a new project and wanted to see where other Erlang
devs stood on it.

Thanks,

Andrew

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions


      

      

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions


-- 
Garry Hodgson
Lead Member of Technical Staff
AT&T Chief Security Office (CSO)

"This e-mail and any files transmitted with it are AT&T property, are confidential, and are intended solely for the use of the individual or entity to whom this e-mail is addressed. If you are not one of the named recipient(s) or otherwise have reason to believe that you have received this message in error, please notify the sender and delete this message immediately from your computer. Any other use, retention, dissemination, forwarding, printing, or copying of this e-mail is strictly prohibited."

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Nathaniel Waisbrot
In reply to this post by Andrew Berman
> a team (ideally very lean like WhatsApp) and with lots and lots of devs


That was a quick change of plans!

Seriously, though, I've been wondering if there are any nice examples of Elixir/Erlang mixing out there. I'm happy with Erlang, but it'd be nice to offer other developers the choice and I'd like to get some of my favorite Erlang libraries more attention in the Elixir world.

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions

signature.asc (817 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

José Valim-2
In reply to this post by Garry Hodgson-2

In my experience, it isn't the syntax that's hard to learn,
but the concepts. and since most learning material is
(at least so far) in Erlang, having to mentally translate
that to Elixir would seem to make it harder, not easier.

While I would say this *was* a concern at some point, I am glad to say it isn't one anymore. Since the beginning we have focused on very good documentation, getting started experience and tooling[1]. We have books that cover from the language up to OTP[2], screencasts[2], initiatives like Elixir School in many languages[3], conferences and many more.

Surely at some point you will need to use Erlang libraries, but as you said correctly, once that happens the developer will already be familiar with the majority of concepts in a way everything Erlang has to offer is an *addition* rather than a distraction, from Erlang books to Erlang conferences. For example, I have heard a lot of Elixir developers praising Erlang in Anger once they are running systems in production.
 
But I may not be representative. Last time I counted I've
used around 40 languages in anger over the years, yet
I find Ruby bewildering.

I am not sure Ruby is relevant here. Elixir is not Ruby (and it could never be in the Erlang VM). Elixir also isn't about Ruby syntax (the same way Erlang isn't about Prolog syntax)[4].



_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Garry Hodgson-2
On 2/26/16 3:21 PM, José Valim wrote:
> I am not sure Ruby is relevant here. Elixir is not Ruby (and it could
> never be in the Erlang VM). Elixir also isn't about Ruby syntax (the
> same way Erlang isn't about Prolog syntax)[4].
of course you are right. i'm just in a bad mood from debugging chef recipes.

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Garry Hodgson-2
On 2/26/16 3:47 PM, Garry Hodgson wrote:
> On 2/26/16 3:21 PM, José Valim wrote:
>> I am not sure Ruby is relevant here. Elixir is not Ruby (and it could
>> never be in the Erlang VM). Elixir also isn't about Ruby syntax (the
>> same way Erlang isn't about Prolog syntax)[4].
> of course you are right. i'm just in a bad mood from debugging chef
> recipes.
my point being that while many people describe Elixir as ruby-like,
that's not a selling point for me personally.

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

kevin montuori
In reply to this post by Garrett Smith-5
>>>>> "gs" == Garrett Smith <[hidden email]> writes:

    gs> I strongly prefer the Erlang syntax over Elixir, especially for
    gs> actual functional programming.

This!

But also: the Elixir crowd seems overawed by the pipe operator.  It's
pretty handy in some circumstances but the community's desire to glom
additional functionality onto the thing is unnerving.  I can't wait to
try to maintain code that's overloaded the meaning of |>.

And this is just hideous: arg1 |> fun(arg2).

I'd also posit that the convention of not using -import() in Erlang is a
good thing.  Lots of Elixir code I've read goes nuts with import() and
use().  Faster, perhaps, to type than fully qualified functions but I
honestly think it leads to maintenance issues.  Especially use() which
can have side effects.

I worked (briefly!) on a codebase that had a "use MyStuff" at the top of
every module. The MyStuff module comprised one autoexecuted __using__/1
function that was merely a list of import statements.  It was a
miserable experience.

I don't mean to conflate the community with the language though.  Elixir
the language has some nice bits.  String handling just works, macros
behave as you'd expect, mix and hex are fabulous tools, the
documentation's well written, tasks and agents are useful abstractions,
and this list continues.  I prefer Erlang to Elixir but would sure
prefer Elixir to Javascript, Ruby, or Java.


k.

--
  Kevin Montuori
  [hidden email]
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Raoul Duke
Everybody please go try LFE. Come on! ;-)
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Adam Rutkowski-3
In reply to this post by Andrew Berman
Hi Andrew,
 
As a die hard, long time Erlang fan, who recently switched to Elixir full-time I can probably share my perspective.
For the past 6 or 7 months I have been writing Elixir code for a Ruby shop seeking their way out ;-)
 
At the beginning it was extremely tough. Needless to say, I have never written a single line in Ruby before,
I was unfamiliar with Rails (some of the concepts/terminology obviously was transferred to Phoenix),
and everything seemed just plain weird since I got very accustomed to the rough obviousness of Erlang/OTP.
 
The switch wasn't easy for me -- at least I had the OTP part figured out.
 
But as I soon found out, expecting Elixir to be "Ruby on BEAM" is an oversimplification.
Today I think it's a very nicely designed language combining more than just that. 
 
Plug is brilliant, definitely brings Clojure's Ring to mind. Think easily accessible, composable cowboy middlewares.
They're really fun to build and easy to test.
 
Ecto is *the* killer app. Being able to abstract my postgres schema with ease is something I always
craved in the Erlang world (not to mention the gazillion of epgsql forks).
Today I can use postgres almost to its full potential. PG views transparently map to predefined
structs, arrays & maps (jsonp) are supported via type casting, the query interface is again,
composable and powerful (borrows from LINQ) and doesn't do any magic you would expect
from popular, "classic" ORMs. Migrations works as expected, rolling back a schema change requires
no effort.
 
Protocols (again, Clojure?) and modules, that can be aliased and selectively imported
allow you to nicely organise large codebases into logical chunks of responsibilities.
 
In general, I fear not anymore. Elixir is well tested, carefully crafted and evolves very dynamically.
I still love Erlang, but I don't think I made a mistake of trying Elixir out in the real world.
I like its expressiveness and the fact that there's still OTP available for me to use. 
It's fun.
 
Cheers & happy hacking,
 
/A.
 
 
On Fri, Feb 26, 2016, at 19:28, Andrew Berman wrote:
Hey Fellow Erlangers,
 
I was curious if any of you guys have switched or are contemplating using Elixir for your next project. I've been programming Erlang for a while now, but I'm about to start a new project and wanted to see where other Erlang devs stood on it.
 
Thanks,
 
Andrew
_______________________________________________
erlang-questions mailing list
 
 
 

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Onorio Catenacci
In reply to this post by Andrew Berman

Message: 16
Date: Fri, 26 Feb 2016 18:28:05 +0000
From: Andrew Berman <[hidden email]>
To: Erlang Questions <[hidden email]>
Subject: [erlang-questions] Any Erlang Devs Contemplating Elixir?
Message-ID:
        <[hidden email]>
Content-Type: text/plain; charset="utf-8"

Hey Fellow Erlangers,

I was curious if any of you guys have switched or are contemplating using
Elixir for your next project. I've been programming Erlang for a while now,
but I'm about to start a new project and wanted to see where other Erlang
devs stood on it.

Thanks,

Andrew

Hi Andrew,

While there may be other considerations you want to keep in mind, there's one, to my mind, major point that's been neglected in the discussion of using Elixir: macros.

I have been led to understand by people far more familiar with Erlang than I am that in order to use certain behaviours from OTP one has to write boilerplate code for several callbacks whether one wants to modify the behavior from defaults or not.  

Elixir's macros allow the library to provide default implementations for these callback functions.  Of course a developer can override the defaults if needed but not having to code what I don't need strikes me as a big advantage--especially if we're discussing a new developer who doesn't already know either Erlang or Elixir.

I say this with full awareness that Elixir's macros are a good thing and a bad thing too because it seems that every noob Elixir developer on our mailing list wants to use macros everywhere.  That and every noob seems to be convinced that the pipe forward operator (|>) just has to be used _everywhere_.  

I can certainly understand the thinking of folks who are familiar with Erlang. I feel the same way when people ask me why I never learned Java (I do C# for the day job).  Why would I bother?  But for new developers I do believe the fact that they can use OTP without having to worry about creating a lot of boilerplate code is a significant advantage.

By the way,  I've never written a line of Ruby in my life and I still need to get round to looking at Phoenix. Not everyone looking at Elixir is a Ruby developer looking for a more scalable Ruby on Rails--although in fairness there are a lot of them. 

FWIW. 

--
Onorio



_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Andrew Berman
In reply to this post by Adam Rutkowski-3
Hey Adam,

Good to hear that your experience is positive.  Did you settle on Elixir because you were writing it for a Ruby shop?  In other words, did you choose it because you have a team of Ruby devs and thought it might be easier to migrate them?

On Fri, Feb 26, 2016 at 1:41 PM Adam Rutkowski <[hidden email]> wrote:
Hi Andrew,
 
As a die hard, long time Erlang fan, who recently switched to Elixir full-time I can probably share my perspective.
For the past 6 or 7 months I have been writing Elixir code for a Ruby shop seeking their way out ;-)
 
At the beginning it was extremely tough. Needless to say, I have never written a single line in Ruby before,
I was unfamiliar with Rails (some of the concepts/terminology obviously was transferred to Phoenix),
and everything seemed just plain weird since I got very accustomed to the rough obviousness of Erlang/OTP.
 
The switch wasn't easy for me -- at least I had the OTP part figured out.
 
But as I soon found out, expecting Elixir to be "Ruby on BEAM" is an oversimplification.
Today I think it's a very nicely designed language combining more than just that. 
 
Plug is brilliant, definitely brings Clojure's Ring to mind. Think easily accessible, composable cowboy middlewares.
They're really fun to build and easy to test.
 
Ecto is *the* killer app. Being able to abstract my postgres schema with ease is something I always
craved in the Erlang world (not to mention the gazillion of epgsql forks).
Today I can use postgres almost to its full potential. PG views transparently map to predefined
structs, arrays & maps (jsonp) are supported via type casting, the query interface is again,
composable and powerful (borrows from LINQ) and doesn't do any magic you would expect
from popular, "classic" ORMs. Migrations works as expected, rolling back a schema change requires
no effort.
 
Protocols (again, Clojure?) and modules, that can be aliased and selectively imported
allow you to nicely organise large codebases into logical chunks of responsibilities.
 
In general, I fear not anymore. Elixir is well tested, carefully crafted and evolves very dynamically.
I still love Erlang, but I don't think I made a mistake of trying Elixir out in the real world.
I like its expressiveness and the fact that there's still OTP available for me to use. 
It's fun.
 
Cheers & happy hacking,
 
/A.
 
 
On Fri, Feb 26, 2016, at 19:28, Andrew Berman wrote:
Hey Fellow Erlangers,
 
I was curious if any of you guys have switched or are contemplating using Elixir for your next project. I've been programming Erlang for a while now, but I'm about to start a new project and wanted to see where other Erlang devs stood on it.
 
Thanks,
 
Andrew
_______________________________________________
erlang-questions mailing list
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Adam Rutkowski-3
On Fri, Feb 26, 2016, at 23:00, Andrew Berman wrote:
Hey Adam,
 
Good to hear that your experience is positive.  Did you settle on Elixir because you were writing it for a Ruby shop?  In other words, did you choose it because you have a team of Ruby devs and thought it might be easier to migrate them?
 
I was looking for a job with an opportunity to learn something new, I guess I just needed a change. And I really wanted to stay in my OTP comfort zone. The company I ended up working for was looking for Elixir devs for the reason you've mentioned.
 
 
On Fri, Feb 26, 2016 at 1:41 PM Adam Rutkowski <[hidden email]> wrote:

Hi Andrew,
 
As a die hard, long time Erlang fan, who recently switched to Elixir full-time I can probably share my perspective.
For the past 6 or 7 months I have been writing Elixir code for a Ruby shop seeking their way out ;-)
 
At the beginning it was extremely tough. Needless to say, I have never written a single line in Ruby before,
I was unfamiliar with Rails (some of the concepts/terminology obviously was transferred to Phoenix),
and everything seemed just plain weird since I got very accustomed to the rough obviousness of Erlang/OTP.
 
The switch wasn't easy for me -- at least I had the OTP part figured out.
 
But as I soon found out, expecting Elixir to be "Ruby on BEAM" is an oversimplification.
Today I think it's a very nicely designed language combining more than just that. 
 
Plug is brilliant, definitely brings Clojure's Ring to mind. Think easily accessible, composable cowboy middlewares.
They're really fun to build and easy to test.
 
Ecto is *the* killer app. Being able to abstract my postgres schema with ease is something I always
craved in the Erlang world (not to mention the gazillion of epgsql forks).
Today I can use postgres almost to its full potential. PG views transparently map to predefined
structs, arrays & maps (jsonp) are supported via type casting, the query interface is again,
composable and powerful (borrows from LINQ) and doesn't do any magic you would expect
from popular, "classic" ORMs. Migrations works as expected, rolling back a schema change requires
no effort.
 
Protocols (again, Clojure?) and modules, that can be aliased and selectively imported
allow you to nicely organise large codebases into logical chunks of responsibilities.
 
In general, I fear not anymore. Elixir is well tested, carefully crafted and evolves very dynamically.
I still love Erlang, but I don't think I made a mistake of trying Elixir out in the real world.
I like its expressiveness and the fact that there's still OTP available for me to use.
It's fun.
 
Cheers & happy hacking,
 
/A.
 
 
On Fri, Feb 26, 2016, at 19:28, Andrew Berman wrote:
Hey Fellow Erlangers,
 
I was curious if any of you guys have switched or are contemplating using Elixir for your next project. I've been programming Erlang for a while now, but I'm about to start a new project and wanted to see where other Erlang devs stood on it.
 
Thanks,
 
Andrew
_______________________________________________
erlang-questions mailing list
_______________________________________________
erlang-questions mailing list
 
/A.
 

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Alisdair Sullivan
In reply to this post by Nathaniel Waisbrot

> On Feb 26, 2016, at 12:10 PM, Nathaniel Waisbrot <[hidden email]> wrote:
>
> Seriously, though, I've been wondering if there are any nice examples of Elixir/Erlang mixing out there. I'm happy with Erlang, but it'd be nice to offer other developers the choice and I'd like to get some of my favorite Erlang libraries more attention in the Elixir world.
>

you might be interested in this: http://github.com/talentdeficit/posterize

it’s an elixir library that wraps eric meadows-jonsson’s excellent postgrex library to provide a more convenient interface for erlang usage

i think elixir has a lot to offer erlang and it’s a shame that the two communities are not more integrated
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Loïc Hoguin-3
In reply to this post by Onorio Catenacci
On 02/26/2016 10:27 PM, Onorio Catenacci wrote:

> While there may be other considerations you want to keep in mind,
> there's one, to my mind, major point that's been neglected in the
> discussion of using Elixir: macros.
>
> I have been led to understand by people far more familiar with Erlang
> than I am that in order to use certain behaviours from OTP one has to
> write boilerplate code for several callbacks whether one wants to modify
> the behavior from defaults or not.
>
> Elixir's macros allow the library to provide default implementations for
> these callback functions.  Of course a developer can override the
> defaults if needed but not having to code what I don't need strikes me
> as a big advantage--especially if we're discussing a new developer who
> doesn't already know either Erlang or Elixir.

I'm not even sure what makes you think you need macros to provide
default implementations? You don't. The gen_server for example has an
optional callback with a default implementation: format_error. That it
doesn't provide defaults for other callbacks is purely a design choice,
and not a limitation of the language. You could trivially extend
gen_server to make all callbacks optional, no need to have macros for
that...

--
Loïc Hoguin
http://ninenines.eu
Author of The Erlanger Playbook,
A book about software development using Erlang
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

Loïc Hoguin-3
In reply to this post by José Valim-2
On 02/26/2016 09:21 PM, José Valim wrote:
>     But I may not be representative. Last time I counted I've
>     used around 40 languages in anger over the years, yet
>     I find Ruby bewildering.
>
>
> I am not sure Ruby is relevant here. Elixir is not Ruby (and it could
> never be in the Erlang VM). Elixir also isn't about Ruby syntax (the
> same way Erlang isn't about Prolog syntax)[4].

Rationally, Elixir is not Ruby, and Erlang isn't Prolog. Irrationally,
it is. Elixir has the same look and feel as Ruby, and Erlang has the
same look and feel as Prolog.

When Ruby developers look at Elixir they feel right at home. If you call
yourself a Ruby developer, then you identify with certain values from
Ruby, many of which can be found in Elixir. It's familiar. Again, we are
on the irrational level here.

Same goes for Erlang and Prolog. In fact a few days ago a few long-time
Prolog developers pointed out the exact same thing when they were
talking about Erlang. There is this familiarity that smoothes them in,
even though the languages are fundamentally different.

The thing is, if you have to convince large groups of people, you need
to appeal to their irrational mind. As Scott Adams brilliantly pointed
out, identity beats analogy beats reason. If you want to convince people
to come to Elixir, you need to appeal to their identity, which is why
targeting Ruby on Rails developers is your best bet. If you don't then
you're just wasting valuable time and resources.

I've pointed out a few years ago that Elixir was for Ruby developers. I
didn't know why at the time. If you look at the most recent survey
(http://blog.elixirsips.com/2015/12/21/elixir-users-survey-2015/), you
can see that Ruby developers dominate. Other languages are little more
than a statistical anomaly. Clearly you bring in a lot more Ruby
developers than any other combined, and the reason for that is identity.

Stop fighting it. Use it to bring more people in.

--
Loïc Hoguin
http://ninenines.eu
Author of The Erlanger Playbook,
A book about software development using Erlang
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Any Erlang Devs Contemplating Elixir?

José Valim-2
When Ruby developers look at Elixir they feel right at home. If you call yourself a Ruby developer, then you identify with certain values from Ruby, many of which can be found in Elixir. It's familiar. Again, we are on the irrational level here.

You don't need to go to an irrational level to argue that. Elixir picks some of its values from Ruby, as well as Erlang and Clojure. I don't think anybody from the Elixir community is denying or fighting against that.

In any case, the "Elixir is not Ruby" is a valid disclaimer. Otherwise you get people expecting it to be exactly like Ruby and have their expectations violated and also people that completely dismiss it because they think it will be exactly like Ruby.

If you look at the most recent survey (http://blog.elixirsips.com/2015/12/21/elixir-users-survey-2015/), you can see that Ruby developers dominate. Other languages are little more than a statistical anomaly. Clearly you bring in a lot more Ruby developers than any other combined, and the reason for that is identity.

The other languages *amount to 40% of the replies*. It is not a statistical anomaly. And I would be really careful to put all of the reasoning on the identity/irrational, although I agree it does play an important role. For example, we should also consider that my biggest sphere of influence before Elixir was the Ruby community. Those were the first developers I could reach to, which in turn brought more developers from the same community, and so on.

That's exactly why I would like to focus on other communities. We have already attracted many Ruby folks which are now doing the work of "spreading the word" more effectively than I ever would. Plus they have the whole identity thing going on for them. Actively investing in other communities is how we can bring more diversity into the language and ensure it grows beyond a web-centric community.

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
123