Introducing Julia: An Alternative to Python and R for Data Science

As you can imagine, someone who is coding in Python for half or even more of the day can be a bit skeptical when it comes to trying out new languages. A while back a couple of folks tried to convince me to switch to R, and I honestly tried but disliked so much about it.

Data science isn’t all about statistics, you also have to create APIs and stuff, so the end-user can somehow interact with what you’ve made, so for me, it’s only natural to choose programming language instead of a statistical language. But you might disagree, and that’s fine.

Anyway, let’s get back on the topic. So what is Julia? According to a quick web search, Julia is a high-level, high-performance, dynamic, and general-purpose programming language created by MIT and is mostly used for numerical analysis. The work on the language started around 2009, and the first release was in 2012. So the language has been around 8 years now, not a short period, but surely not long as for example, Python has.

That’s quite a sentence. You can think of it as a mixture of R and Python, but faster because it’s a compiled language. Some of the major advantages Julia has over R and Python are:

  1. It’s compiled — Julia is just-in-time (JIT) compiled, and at it’s best can approach or match the speed of C language
  2. It can call Python, C, and Fortran libraries — yeah, you’ve read that correctly, and we’ll explore this in more details some other time
  3. Parallelism — parallelization in Julia is more refined than in Python

However, for every advantage there is a disadvantage, to name a few:

  1. Array indexing starts at 1 — that’s just insane for me
  2. Not as mature as Python
  3. Not as many packages as with Python — but you can call Python libraries through Julia

Okay, I just hope you’re still here, as now we’ll explore some key concepts of Julia programming language. First, however, we should install the language, right?