Renato Suero
5 min readAug 15, 2018

Exercism — Otimize o aprendizado de uma nova linguagem

Já conhecia o exercism.io, mas essa nova feature de mentoria, fiquei bem animado. Já havia falado sobre ele com alguns amigos e eles não conheciam, então decidi escrever este post para divulgar essa plataforma incrível.

O exercism é uma plataforma com desafios para treinarmos nossa lógica e conhecermos a linguagem de programação, é muito útil quando queremos aprender uma nova linguagem. Até o momento que escrevo este post há48 linguagens disponíveis.

Linguagens disponíveis, escolha uma e divirta-se =)

Ficou interessado acesse https://exercism.io/ ,Clique em Sign up e crie sua conta, você pode criar usando o e-mail ou sua conta do github.

https://exercism.io/

Quando acessar sua conta, verá esta tela. Nela poderá ver as linguagens disponíveis, quantos alunos inscritos e os exercícios disponíveis.Clicando sobre algum, verá informações sobre a linguagem, mentores, alguns exercícios, os mantenadores. Procure pelo botão “Join…. track”

Depois de clicar no botão Join… track, abrirá um modal, como esta. Aqui tem algo muito importante e legal. Você pode escolher mentoria ou independente. No modo mentoria, todo exercício obrigatório precisa ser avaliado por um mentor, ele pode te dar alguma sugestão para melhorar o código, ou mesmo só fazer um code review e aprovar teu exercício(os mentores estão ajudando no tempo livre e sem ganhar nada, então tenha paciência e não queira ser grosso com os amiguinhos, lembre-se ele está te ajudando sem ao menos te conhecer, seja educado. #ficaDica). Esta é uma boa opção para quem está começando na linguagem, pois pode receber feedback, isso vai ser útil pra te libertar dos vícios/hábitos da outra linguagem e entender como resolvem o problema na linguagem que está estudando.
O independente como o nome já diz, você está sozinho avançando como desejar, se já conhece a linguagem e só quer fazer os exercícios para testar seu conhecimento é uma boa opção.

Acessando a linguagem que escolheu verá uma tela como essa. No lado esquerdo os exercícios obrigatórios para avançar na trilha, depois de completar o exercício, aparecerá alguns opcionais.
No lado direito mostrará seu progresso, os exercícios adicionais completados e os conceitos sobre a linguagem que já aplicou nos exercícios.

Agora com a conta criada e trilha/linguagem selecionada , você só precisa instalar a cli deles, configurar seu token e depois ser feliz. Este é o link com a informação https://exercism.io/cli-walkthrough .

Mac, neste caso você só precisa executar o seguinte comando:

brew update && brew install exercism

Linux, este primeiro você precisa saber sua arquitetura(32 bits,64 bits ou ARM), Você pode chegar as opções para download neste link. Suponhamos que você use 64 bits, você precisa executar os seguintes comandos:

wget https://github.com/exercism/cli/releases/download/v3.0.6/exercism-linux-64bit.tgz 
tar -xf exercism-linux-64bit.tgz
mkdir -p ~/bin
mv exercism ~/bin
echo "export PATH=~/bin:$PATH" >> ~/.bash_profile
source ~/.bash_profile

Windows, este não tenho muito conhecimento, pelo que entendi o processo é, acessar este link, execute o instalador, ai é aquele padrão next,next….

No terminal execute exercism, se você vê algo como a minha tela, falta pouco para começar =).

Agora acesse o link e procure por CLI token(neste momento está do lado esquerdo da tela.

Acesso ao seu token

Agora você só precisa executar e pronto sua cli e conta está configurada.

exercism configure --token=seu_token_copiado_da_imagem_acima

Agora sim vamos ao que interessa, escrever código =)

Quando você selecionar o exercício verá uma tela com a informação sobre o problema(lado esquerdo) e informações como baixar e enviar o exercício(lado direito). Este é um exemplo da trilha de Go.

// baixar o exercício Hamming(3º da trilha de Go)
exercism download --exercise=hamming --track=go
// enviar seu código para ser avaliado
exercism submit /path/to/file [/path/to/file2 …]

Depois de escrever teu código e executar a suíte de testes e não encontrar erros, parabéns seu código está pronto para ser enviado. Quando o mentor avaliar seu código você será notificado. Ele pode sugerir que altere algo e aguarde uma nova versão para aceitar como completo, mas fica frio que há uma troca de mensagens para se entenderem.

Depois que seu código foi aprovado, quando acessar o exercício, verá que tem uma nova opção para ver o código da comunidade.

Ver solução da comunidade

Clicando em View community solutions, você poderá ver outras soluções.

Você pode interagir com a solução clicando nas 3 primeiras opções(esquerda para direita). Well done, Love it e Genius!.
A quarta é para ver quando houve interações entre o usuário e o mentor.

Obrigado por chegar até aqui, espero que tenha gostado, que essa dica seja útil e por favor passa adiante, essa é uma boa alternativa(sem falar que é 100% free) para aprender/melhorar seu conhecimento na linguagem. Existe outra soluções como HackerRank, Coding Games e Codility. Se conhecer outra me diz para adicionarmos aqui na lista =).

Criei um repositório, para minhas soluções em Go, ainda está modesto, o tempo não está sendo meu amigo, mas vou publicando minhas soluções lá.

Uma última sugestão não sai caçando solução para ter um repo completo, lembre-se o objetivo é aprender, deixe o ego de lado e vai no teu tempo com a tua solução, depois de submeter olhe na comunidade. Achou uma melhor, ótimo está no caminho do aprendizado =).

Renato Suero

I’m geek addicted to coffee, technology and tv series who likes to write code in Ruby, Javascript, #golang using #vim.