Python on the rise
A recent post at KDnuggets announced data on Python overtaking R for data science:
Python overtakes R, becomes the leader in Data Science, Machine Learning platforms.
Major issues identified by commenters in this apparent trend are:
- Python libraries are few but better designed.
- R development is still very chaotic and fragmented, with 1000s of libraries used one convenient function at a time.
- There are very few attempts of bringing some order to the R universe.
- Python is a glue language. You can hide C++ and Fortran behind it if you need high-performance.
- R is hard to learn in comparison to Python.
Of course the Python versus R tale is a phony dichotomy because any data scientist worth their salt would want to be fluent in both Python and R (and Java, Hadoop and Spark).
Some commenters remarked on the possibility that Julia would soon experience rise in use by data scientists., despite early growth pains.
What indications are there that Julia might take over as the main programming language for data science?
Zacharias Voulgaris has a post that discuses Julia and Its usefulness in data science. He identifies 6 main reasons why Julia is a good general purpose programming language, which he visualizes as follows:
Julia is also a high-performance language, with performance comparable to that of C and Fortran.
Arshpreet Singh asks “How you know Julia is for you?” and answers it with 4 points:
- You are continually involved in computationally intensive work where runtime speed is a major bottleneck.
- You use relatively sophisticated algorithms.
- You write a lot of your own routines from scratch.
- Nothing pleases you more than the thought of diving into someone else’s code library and dissecting its internals.
Julia has just in time compilation, a rigorous infinitely flexible type system, and calls functions based on “multiple dispatch”, which means that different code is automatically chosen based on the types of the all arguments supplied to a function.
John Pearson is a computational neuroscientist at Duke University and he gives a number of reasons why one should consider Julia:
John has an almost 2 hour video on Introduction to Julia for Pythonistas, which, if you are a dedicated Python use thinking about Julia, is well worth watching:
Data Science Central has complied a list of resources for learning Julia, so if you think Julia might be worth a look, or might be a data science language for you, take a look at these tutorials.