3 min leitura

Elixir Brasil: O Funcional Encontra-se Aqui

Imagem-3-Igor
Compartilhe
4 minutos para ler Por Igor Matsuzaki – Desenvolvedor na Wavy Esse ano tive a oportunidade de participar da segunda edição da Elixir Brasil, onde conheci muito da comunidade de desenvolvedores e entusiastas da linguagem de programação funcional brasileira, realizada pela Codamos, Elug e Nubank. A linguagem de programação funcional Elixir foi criada pelo brasileiro José Valim, engenheiro de Software pela USP. Para os que nunca ouviram falar vou listar algumas características interessante nesse texto. Confira!

Concorrência

Criar aplicações que são utilizadas por milhões de pessoas, é essencial ter a capacidade de manter muitos processos ao mesmo tempo. É necessário lidar com múltiplos usuários realizando requisições simultâneas sem afetar nossos clientes com serviço lento ou fora do ar. Baseado nesse tipo de cenário o Elixir foi construído e pensado para atender essa problemática.

Escalabilidade

Elixir roda em cima da Máquina Virtual do Erlang (BEAM), tornando possível rodar a aplicação em múltiplos nós. Ao combinar esses fatores com o sistema distribuído torna-se um efeito colateral uma boa performance da App.

Tolerância a falha

Uma das características mais amada no Elixir é sua tolerância a falhas. Fornecendo mecanismos de segurança que permitem que a aplicação continue funcionando mesmo quando algo dá errado. Os processos alertam sobre uma falha nos processos dependentes, mesmo em outros servidores, para que possam corrigir o problema imediatamente.

Comunidade

Apesar de ser uma linguagem relativamente nova, possui uma grande biblioteca de projetos open-source mantida pela própria comunidade e empresas que usam a linguagem no seu cotidiano. Destaca-se também por desenvolvedores com maior experiência sempre estão ajudando e compartilhando os seus conhecimentos, em redes sociais, meetups e video tutoriais. Como processo natural desse engajamento surgem as conferências, como por exemplo: ElixirConf US, ElixirConf EU, ElixirConfLA. Demonstrando que em todos os cantos o funcional chamou atenção dos desenvolvedores de todo mundo. Nesse movimento o Brasil conta com um evento próprio e será sobre ele que vamos falar um pouco mais aqui.

Elixir Brasil, 2019

A segunda edição do evento, contou com 400 participantes, 33 palestrantes, 2 trilhas simultâneas em 2 dias de evento. Nesta edição tivemos como Keynotes: Hugo Baraúna – co-fundador da Plataformatec, Edward Wible -cofundador e CTO do Nubank, Amanda Sposito da Plataformatec e Andrea Leopardi do Elixir-Core-Team. Hugo Baraúna, contou para nós um pouco da histórica da Plataformatec em 2012, ter tomado uma decisão ousada: desenvolver uma nova linguagem de programação, o Elixir. Ressaltando como, 7 anos depois, foi importante o modelo open-source para construção do ecossistema abrangente.
Amanda, Edward, Luciano e Hugo Edward Wible, abriu-se para perguntas da galera presente para contar um pouco dos desafios dos 6 anos de Nubank e qual visão tinha nas decisões para resolver esses desafios, muito embora não fazer parte da stack de tecnologia interna da Nubank o Elixir. Amanda Sposito, representou muito bem a presença da mulher no ambiente tech, apresentou um pouco sobre seus desafios no desenvolvimento e aprendizado da linguagem vindo de outra linguagem. Pontuando muito bem sobre dúvidas do uso de Tabela ETS em relação ao Redis, Doctest em relação de testes, cada ferramenta auxiliando em um proposito particular. Andrea Leopardi, fechou o evento contando sobre como podemos utilizar das melhores características do Elixir, em vias de arquitetura e padrão de projeto, para resolver problemas que farão realmente o funcional brilhar na solução do desafio computacional. Gostaria de ressaltar uma palestra que me chamou atenção “Conjuntos em 3 atos”, por Luciano Ramalho, um grande renomado nome brasileiro na comunidade Python, explorando a mecânica da linguagem. Ao assistir esta palestra se torna nítido e claro o poder do Elixir em resolver os problemas de maneira simples, descomplicada e bem mais enxuta.

Lições aprendidas

Um turbilhão de informações bacana foi passada no Elixir Brasil desse ano, bacana de ver como a comunidade tem resolvido diversos problemas com as abordagens do funcional do Elixir. Dessas abordagens destaco:
  • A praticidade e importância em realizar testes de nossa aplicação Elixir, para garantir manutenabilidade, seja via Teste de estado, Teste unitário, Teste de integração até mesmo um Doctest.
  • Explorar mais a características herdadas do Earlang e da Computação Distribuida fará toda diferença em escolher melhor as ferramental para resolver nossos problemas.