How I learned Elixir

It is not a question.

Creations are no more a mystery because we have elixir in history. When I have learned a gist of Elixir/ OTP with a clear cut idea, I started experimenting the things.

When I first introduced to Elixir, I spent a whole day to learn about how the things in Elixir are going on. Every new topic in Elixir has been a surprise to me. The iex environment made my learning easy and more comfortable. After learning the new stuff, I did not take a time to practice them. I kept learning remaining things. While reading books, I keep on turning the pages back whenever I feel like I have read this somewhere. That’s added an extra sugar to me. So, I can revise those topics again.

My way of reading programming books is the worst approach, I feel so. I read the whole book headings first. I just give a glance at coding examples. If anything drags my attention, from the point I will continue to remaining topics. I do not recommend this approach to reading. But everyone has their own unique style of reading.

After learning basic things in elixir, unfortunately I have not used it for a week. Now I am back to square one. Again I turned the pages to get a clear idea of syntax. So, I am looking for exercises to master the syntax in Elixir. I found nothing.

After a day of thinking, I just looked into Erlang open source libraries in Github. I just cloned one of the libraries and started converting file by file and line by line of Erlang files into Elixir code. It is really a nice exercise. After every file of conversion, I got a feel of mastering the things. If I found something unique I keep writing notes. But after sometimes I stop taking down notes. While converting files from Erlang to Elixir, I stuck at many places. Elixir slack and Elixir Forum are my best friends in giving ladder and making me to climb higher in elixir.

After learning Elixir, I have no idea of how I can level up my Elixir skills. I started writing some silly code snippets in Elixir. Until now, I did not touch the OTP sections. I read docs again and again. This time I found writing Elixir mix packages. I don’t have enough knowledge to write hex packages in Elixir. But, I just tried. Later on, it became a habit. After learning the things deeply, those syntax and lines of code has become uncommon.

There is a saying…….

Great Things Take Time

The same thing happened to me. Eventually, the time has come to learn about Processes. When I stepped into processes, I felt little messy. How many times I read about them, every time they appear to me as strange things. I tired of memorizing the things. Today I read about processes, tomorrow again they become strange. Then I stopped reading and started looking into the libraries which developed on GenServer Supervisor & Application

I started taking down the notes again. I read the source code line by line. To my goodness, nobody has written why they are using functions like this. Of course, based on the names of the functions we can guess their functionality, but there lies minute things really need to comment down. After reading the libraries I got the clear picture of when and where to use the things in right dimensions.

The only thing helped me to level up my coding in Elixir is reading others source code. It is not easy to read source code. Reading and understanding others lines of code is like an elephant trying to pass through the needle hole.

After learning, I started writing things down in global to share some tips and tricks. When you write things on your own, this says you had the coding stuff.

Happy Coding …