# Just a silly topic about Go lang and Elixir lang

**URL:** <https://discuss.dgraph.io/t/just-a-silly-topic-about-go-lang-and-elixir-lang/1892>\
**Category:** Users\
**Created:** [October 27, 2017, 3:27am UTC](https://discuss.dgraph.io/t/just-a-silly-topic-about-go-lang-and-elixir-lang/1892 "2017-10-27T03:27:24Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![MichelDiz](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/micheldiz/32/11873_2.png) [@MichelDiz](https://discuss.dgraph.io/u/MichelDiz)\
**Post date:** [October 27, 2017, 3:27am UTC](https://discuss.dgraph.io/t/just-a-silly-topic-about-go-lang-and-elixir-lang/1892/1 "2017-10-27T03:27:25Z")

</div>

Elixir uses technology with more than 30 years in the telephony market. Developed by Ericsson. It has advantages of being able to scale in any direction “out of the box” (vertical, horizontal). It recovers crashed processes “on the fly” (supervisors) without having to restart the program completely. It supports GraphQL (third party). Has native Analyzers - Where you can see problem processes consuming resources and so on. The processes talk to each other. Uses all cores of a CPU. And several advantages (like syntax, PubSub).

I was seeing another day comparisons of applications created in Go-Lang with others made in Elixir. I found the performance behind the benchmarks interesting. 2 millions conections at tha same time. With 450ms latency. (correct me if I’m wrong)

Would it be interesting to consider adopting Elixir instead of Go lang as core base (Client) for the Dgraph? Elixir is very simple to adopt and maybe the amount of helpers for the Dgraph project would grow.

Like I said, Just a silly topic.

Cheers.

REF: [https://youtu.be/Toluc5MCQWs](https://youtu.be/Toluc5MCQWs)

---

<div class="post-metadata">

**Author:** ![mrjn](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/mrjn/32/775_2.png) [@mrjn](https://discuss.dgraph.io/u/mrjn)\
**Post date:** [October 30, 2017, 3:58am UTC](https://discuss.dgraph.io/t/just-a-silly-topic-about-go-lang-and-elixir-lang/1892/2 "2017-10-30T03:58:47Z")

</div>

Elixir sounds amazing and a fun language to work in.

We want to avoid code fragmentation within our code base. So, we stick to Go as much as we can. That way, any developer can pick up any portion of the code, understand it, work on it, or refactor it. Therefore, Go client would remain the main client around which our tooling is built.

Having said that, we’ll definitely expand our support for other clients.

---

<div class="post-metadata">

**Author:** ![MichelDiz](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/micheldiz/32/11873_2.png) [@MichelDiz](https://discuss.dgraph.io/u/MichelDiz)\
**Post date:** [October 30, 2017, 2:57pm UTC](https://discuss.dgraph.io/t/just-a-silly-topic-about-go-lang-and-elixir-lang/1892/3 "2017-10-30T14:57:32Z")

</div>

I’m already a fanboy of your product (I want a shirt! LOLLL). What I wrote is more in the sense “Would it be better? Will these native erlang / elixir features leverage the Dgraph’s production process?”

For example, there are some issues in Github about crash that happens after a simple query or something trivial. The way I’ve seen users of elixir handle bugs and crashes is incredible. They have a “let it fail” philosophy. It is a model that does not bind to bugs, recovers and leaves traces for you to repair the bugs. This is incredible to me. It’s like a service of introspection of the code itself on the fly. That does not knock you down, keeps the service running even after a crash.

Anyway, I understand that it would take a heavy job to switch to a new language. So it’s a silly consideration.

As I said, I want a shirt! xD

---

<div class="post-metadata">

**Author:** ![tamethecomplex](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/tamethecomplex/32/496_2.png) [@tamethecomplex](https://discuss.dgraph.io/u/tamethecomplex)\
**Post date:** [October 30, 2017, 5:47pm UTC](https://discuss.dgraph.io/t/just-a-silly-topic-about-go-lang-and-elixir-lang/1892/4 "2017-10-30T17:47:40Z")

</div>

Add me to the fanboy club. GraphQL +/- FTW.

---

<div class="post-metadata">

**Author:** ![WolfDan](https://avatars.discourse-cdn.com/v4/letter/w/df705f/32.png) [@WolfDan](https://discuss.dgraph.io/u/WolfDan)\
**Post date:** [October 31, 2017, 2:07am UTC](https://discuss.dgraph.io/t/just-a-silly-topic-about-go-lang-and-elixir-lang/1892/5 "2017-10-31T02:07:27Z")

</div>

Elixir is not really good at number crunching and he Dgraph library relies a lot on that (I suppose, I haven’t check the source code yet), so if thats the case Go is better suitted for this kind of things ^^

---

<div class="post-metadata">

**Author:** ![mrjn](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/mrjn/32/775_2.png) [@mrjn](https://discuss.dgraph.io/u/mrjn)\
**Post date:** [October 31, 2017, 3:37am UTC](https://discuss.dgraph.io/t/just-a-silly-topic-about-go-lang-and-elixir-lang/1892/6 "2017-10-31T03:37:23Z")

</div>

> [@MichelDiz](#):
>
> As I said, I want a shirt! xD

Send along your t-shirt size, DM your address and I’ll see what we can do. 😃

---

<div class="post-metadata">

**Author:** ![system](https://canada1.discourse-cdn.com/flex007/uploads/dgraph/original/2X/2/2b38fdece2abe5814f2e51bee69d1e67fc304b0a.png) [@system](https://discuss.dgraph.io/u/system)\
**Post date:** [November 30, 2017, 3:37am UTC](https://discuss.dgraph.io/t/just-a-silly-topic-about-go-lang-and-elixir-lang/1892/7 "2017-11-30T03:37:29Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
