Introdução
Muitas pessoas da rede social do passarinho azul (essa mesma que você imaginou) me procuraram para saber um bom roadmap de estudos em Elixir, e bem, eu não sou a maior referência da área, mas creio que posso guiar com clareza qualquer um que queira aprender sobre essa linguagem maravilhosa. Dito isso, resolvi juntar todo o conteúdo que mapeei e filtrei para o melhor aprendizado em Elixir dada a minha experiência estudando-os. Dessa forma, só apresentarei conteúdos que ESTUDEI e que me ajudaram a entender melhor a linguagem.
Parte 1 - Entendendo o básico
A primeira parte para um bom estudo, independentemente da linguagem, são as bases, entender concisamente os tipos básicos, operadores, funções, sintaxe e afins é de suma importância. Dessa forma, nada melhor do que aprender isso logo de cara pela documentação da linguagem. Nela você já terá acesso à aba GUIDES, com um guia bem entendível dos principais elementos que formam a linguagem Elixir. No entanto, caso queira algo mais tátil, visual e direto ao ponto, é possível estudar todos esses conteúdos por meio do ElixirSchool. Assim, se estudadas a sério, suas bases teóricas serão excelentes para um bom entendimento da linguagem.
E caso você goste de cursos em vídeo, é possível complementar os estudos por eles, no YouTube e na Udemy você encontra alguns canais ensinando Elixir com uma didática excelente, sendo eles:
E Sobre a prática?
-
Para praticar os tipos básicos e operações, aí vai uma opinião MINHA:
- Utilizar o iex: Eu sempre apoiei o começo dos estudos sobre a linguagem por meio da ferramenta iex, que já vem instalada com o Elixir, a mesma possibilita ao desenvolvedor criar funções, operações e manipular diversos elementos da linguagem sem ter que abrir uma IDE, fazendo tudo pelo terminal. Desse modo, eu incentivo imensamente o uso dela para o maior costume de testar as coisas em um ambiente seguro e prático.
- MUITOS EXERCÍCIOS: Hoje, não vejo um site mais completo para praticar Elixir que não o Exercism. Os desafios nele contidos te permitem explorar as mais diversas formas de resolução e manipulação de dados, e em contextos divertidos, sem contar a ferramenta incrível de mentoria em que o estudante pode solicitar de forma GRATUITA na plataforma, onde alguém mais experiente pode ajudar.
- Projetos simples: começar com projetos simples sempre é uma boa escolha, criar um módulo com funções que manipulam as estruturas de dados do Elixir, interagem com a criação e manipulação de arquivos, etc.
Parte 2 - Conhecendo ferramentas e libs
Após um bom estudo do básico da linguagem, creio que o próximo passo seria entender o mix, uma das principais ferramentas do Elixir, a partir dela é possível criar um conjunto de diretórios que permitem uma excelente estruturação do código, juntamente com exemplos de testes, libs e etc...
Você também pode acessar um conteúdo de ótima qualidade no ElixirSchool
Praticas com o Mix:
-
Aqui vão algumas sugestões para se praticar no mix:
- Aplicação de libs (credo, oban, plugcowboy, money, etc.).
- Criação de Plugs (Caso não saiba o que raios são Plugs em Elixir, recomendo o meu Post sobre).
- Testes unitários com ExUnit e uma introdução ao TDD utilizando a lib mix-testwatch.
- Primeiro CRUD com Ecto.
- Criação de um projeto de gastos financeiros (CLI ou utilizando alguma lib para ter componentes visuais)
- Criação de um projeto simulando um banco (Contas, transferencias, saques, depósitos)
- Criar um mini RPG com personagens, habilidades, etc...
Parte 3 - Conhecendo o Framework Web Phoenix
Com uma boa base das partes 1 e 2, já é possível introduzir o framework Phoenix, e você pode aprender a base diretamente na documentação do mesmo. Em contraposição à parte básica do Elixir, não se acha um bom conteúdo gratuito sobre phoenix (pelo menos eu não achei, então sinta-se à vontade para deixar nos comentátios sugesões de conteúdo para eu colocar aqui), somente alguns tutoriais no youtube. Dessa forma, fica a indicação do Elxpro acima citado como um conteúdo introdutório do phoenix, juntamente com o estudo da sua documentação.
Colocando em prática / ideias de projetos
-
A minha principal dica para se estudar o framework é fazendo projetos reais, tais como:
- Consumo de API's de terceiros (ViaCep, Riotgames, Github)
- Criação de usuários
- Criação e autenticação de tokens com a lib Guardian
- Desenvolvimento de alguma API que interage com algum valor monetário (Controle de gastos, Simulação de banco, etc...)
Parte extra - Mapa visual e conclusão
Abaixo temos um bom resumão do que é MUITO interessante estudar caso queira conhecer e utilizar Elixir no dia-a-dia, e lembrando, esse artigo foi escrito com base nas minhas experiências e conteúdos gratuitos de ensino que encontrei na internet, mas para o meu estudo, também utilizei livros e alguns cursos da udemy (todos pagos).

Top comments (10)
Ótimo trabalho!
Obrigado pela menção a meu Canal Professor Adolfo Neto!
Que honra receber seu comentário, professor! Muito obrigado pelo feedback!
Ah, acho que você pode gostar do Elixir em Foco elixiremfoco.com/
Conheço demais! Já escutei todos os podcasts e estou esperando os próximos.
Boa referência prá aprender qualquer linguagem mesmo. Ficou muito legal!!
Adorei o Mindmap ♥️
Muito legal. Pena que não vejo a linguagem sendo absorvida pelo mercado, já que não vejo vagas para ela
Nice articles, current building more projects and trying to pass my elixir knowledge.
Ótimo post.
Parabéns pelo trabalho!
Sensacional!!! ótimo post
show, vou seguindo esse caminho
obrigado