Learn Elixir (or Ruby, Javascript, Clojure) through exercism.io
I am currently in the process of improving my Elixir skills using the site Exercism.io.
What’s Exercism.io?
Exercism.io is a really neat concept: it provides you a platform to learn a new development language, where you get feedback on your exercises from other users who previously succeeded in completing the exercise.
How does it work?
It works using a command line tool to manage things on your machine, and the website, where users provide feedback on your code, and you provide feedback on the code from other people if you completed the exercise previously.
I will walk you briefly through the steps here.
Get a new exercise
exercism fetch
This creates a folder for the next exercise, and downloads the initial files you need to start writing code. It usually contains a README.md
with a short description on the problem, and a test_whatever.exs
which contains your unit tests. Initially only the first test is commented out, all the other test implementations are commented.
You can now create a file whatever.exs
and then just type elixir test_whatever.exs
and you will get test feedback.
Submit your solution
exercism submit whatever.exs
This will allow you to submit your solution to the website, available for others to give you suggestions to improve your code. You can change your code and repeat the submit
process.
After your code is considered done, “someone” - whoever that might be or however that might work - approves your solution and you can fetch
the next exercise.
That’s it - what does it look like?
Simple, isn’t it. To show you it really works, I will provide you some implementations of my first few exercises I completed - I really love the neatness of Elixir BTW -.
If you would like to learn a new language (they currently offer ruby
,javascript
,elixir
and clojure
) I would strongly suggest you to try it out!
Have fun!