-
Notifications
You must be signed in to change notification settings - Fork 1
Description
A friend recently asked me this question.
And I feel it deserves a public
reply (which we can discuss in depth as a thread).
And perhaps we can add a summary to the main README.md
with a link to the issue,
so it's "discoverable" be other people who are new
to Elixir.
Context
The friend who asked the question is a highly competent engineer who is proficient is C, Java, Python, Go and JavaScript, but new
to Elixir/Erlang and "functional programming" in general.
While this repository/tutorial is meant to be targeted at "complete beginners",
(because we want the content to be approachable to everyone)
its worth adding a section for people who are proficient in other languages and may be considering trying Elixir out of curiosity.
Intro
Think of a time where you have discovered something new
for the first time.
Most of the time people take the "discovery process" for granted
because it happens without much conscious effort.
The place you live, the clothes you wear, the food you eat, the people you socialise with,
for the most part on the result of conscious thought.
No "Marketing"
"Many of the companies that use Erlang refrain from discussing it for competitive reasons"
Q: Will My Company/Team Have Difficulty Recruiting/Training People?
Does your company currently have issues with recruiting/training people...?
Most companies (70%+ by latest figures) have trouble recruiting skilled/experienced people.
ses: http://www.telegraph.co.uk/business/2018/01/09/pervasive-skill-shortages-across-uk-economy-drive-wages
Projects Built With Erlang/Elixir for Reliability & Scalability
-
RabitMQ one of the most popular message broker systems: https://en.wikipedia.org/wiki/RabbitMQ
-
Apache CouchDB an open source
https://en.wikipedia.org/wiki/CouchDB used by: BBC, NPM, Credit Suisse, the Large Hadron Colider (LHC) at CERN etc. -
Riak a distributed NoSQL key-value data store that offers high availability, fault tolerance, operational simplicity, and scalability: https://en.wikipedia.org/wiki/Riak
Companies Using Elixir/Erlang in Production
- Subset: https://www.netguru.co/blog/10-companies-use-elixir
- WhatsApp - uses Erlang for the most popular messaging system in the world (by far)
- Pinterest - uses Elixir for their notifications & messaging system.
- Adobe - uses Elixir to power collaborative creative work.
- Discord - the most popular messaging system for gamers.
- Golman Sachs see: https://www.meetup.com/erlangusergroup/events/227290147/
- Comprehensive list: https://elixir-companies.com
"Prior Art", Inspiration and Background Reading
This question (or a similar gist) has been asked before:
- Why isn't Erlang more popular? https://news.ycombinator.com/item?id=7277797
- Where is Erlang used and why? https://stackoverflow.com/questions/1636455/where-is-erlang-used-and-why
- Why Erlang? https://beebole.com/blog/why-erlang
Recommended Reading / Watching
- Great intro on technical decision making: https://content.pivotal.io/blog/understanding-when-to-use-rabbitmq-or-apache-kafka
- Bret Victor The Future of Programming: https://youtu.be/8pTEmbeENF4
- Brian Cardarella Elixir: The only Sane Choice in an Insane World (GOTO Conf 2017): https://youtu.be/gom6nEvtl3U
- Erlang: From WhatsApp To Outerspace: http://www.huffingtonpost.co.uk/entry/erlang-from-whatsapp-to-o_n_4944667 (huffington post, I know, but it's actually really well-written!)
Active and Thriving Community > User Groups, Forums and Chat
The London User Group for Elixir is the third biggest for a programming language after JavaScript and Python and is growing fast.
This means that there are plenty of people you can learn from/with by attending in-person meetups/events which are usually free.