Learning Julia
It has been a while since my last blog post and this is not because I have been idling. I have been flirting with Julia (no pun intended) – a high performance programming language for scientific computing.
I have been working through the MOOC – Introduction to Computational Thinking with Julia - to pick up the language. The course is really good and besides teaching you Julia, introduces several foundational ideas in data science and statistical thinking.
In fact, I have been coaxing a couple of my cousins and my nephew; all in their late teens; to work through this course to pick up some computational thinking skills.
Some early reactions to what I have learned so far.
1.Julia brings together the best of Python and R. The package management in Julia is hassle free like in R, yet the language is incredibly easy to use and general purpose like Python.
2.The multiple dispatch system lives up to the hype.
3.The Pluto notebook project despite being in its infancy seems really promising and sleek.
4.Seam Carving, which I learned about in this MOOC is perhaps the most simple, elegant, practically useful algorithm I have come across.
I have also been exploring the JuMP package as I have also been diving into Discrete Optimization on the side.
I packaged some of the things I learned and did a presentation to my team as part of the “Monthly Learning Hour”. See the video below you if you are interested. The code used can be found here: https://github.com/govindgnair23/Intro_to_Julia