Go Back

learning elixir

I have been wanting to get back into learning stuff outside of work for a while now. When I was in college I spent an excessive amount of time just dialing in my knowledge of stuff, mostly React. I was spending 12-18 hours a day (no joke), 5-6 days a week, just coding. Once I started working, I had other things to do and stopped coding after work, plus, after spending 8 hours breaking my brain trying to do stuff, I didn't really want to shove more info in it, cat videos and video games were what I wanted.

In the last few months I've been feeling kind of bored of everything and honestly, a little bit down. I lost my interest in a lot of things I used to like (some from just growing up a little) and I feel like my knowledge hasn't been increasing like it was before. I have been wanting to do some learning of something, and building out React apps aren't as fun at home since I do it all day, so it has been hard to find anything that can keep my interest. In comes Elixir.

Backstory: I lurk the TorontoJS slack a lot. I do try to help out when I can around there, but sometimes I'm either a bit intimidated and don't want to look silly, or other times I really don't know and can't answer (I still try to solve other's questions myself too just to see if I can figure it out). I've been seeing some talk of Elixir, mostly from another guy named Rohan (if for whatever reason you're reading this... Hey!). The language looked very interesting, and a lot of the features he would show and talk about looked super useful which ended up really peaking my interest. Plus, I figured Elixir is functional programming, so even if I learn a bit of it and don't enjoy it, I may increase my functional programming skills, which would help me get better at JavaScript!

After speaking with Rohan, the TorontoJS master / promoter of Elixir, I had some really awesome resources to start learning. The primary learning resource I am using is this course on udemy. It is an awesome course so far (I'm on the beginning of the phoenix section) and I have gotten to build some cool stuff with Elixir that I will (hopefully) talk about in another blog post. I actually managed to convince my girlfriend (who is also a software developer) to learn it with me.

So far I am really enjoying the language itself, it just has amazing features (pattern matching and the first class testing support being the main things that blow my mind), and it is honestly a joy to learn. It has helped that I know some of the functional ideas already, and that I am familiar with Ruby syntax from some Ruby on Rails experience. Amanda (my girlfriend) doesn't enjoy the syntax as much, but she really enjoys the functional part of it, for the noted reason about it helping with JavaScript development too (which we both use in our day to day development).

Overall, I am really enjoying getting back on track with learning new things, it has brought back some of the excitement to program again. Usually at work I am excited to go home and do some Elixir now. Though, I think my heart still lives with JavaScript and React.

I feel like as a developer keeping up with newer technology, or even learning something that you're interested in that isn't knew, is a necessity. It helps build up your confidence, and can sometimes show you that you do know more than you think, and that you are better than you think. Confidence is something so many developers struggle with, and I genuinely feel that learning new languages/libraries/frameworks can really help with that.

Anywho, this was just a long blurb to get that all off my chest, and I plan to make some more posts about specific things about Elixir I am really enjoying, and about some of the projects I am building with it!