business environment. Businesses have woken up to the fact there is value in their data, and as a result the humble data scientist is in high demand.
Last month LinkedIn released its top skills of 2016 survey results and for the third year in a row, data science – “Statistical Analysis and Data Mining” – is amongst the top two, vying for top position with “Cloud and Distributed Computing”. Drilling down by individual country, the UK lists data science as number one, the top skill of 2016.
Data scientists have their own tools and tactics to delve into the data and in this piece we will look at a few of the languages they use. We will give the reader an overview of each language, why they are popular for data analytics and provide an insight into the language choices made by data scientists.
Java is probably the most popular and widely used programming language in computing today. The first public implementation was released by Sun Microsystems in 1995 and it promised that you could “Write Once, Run Anywhere”. This was a compelling idea at the time because many other languages had to be recompiled for difference types of computers. Java is different because it compiles into bytecodes – as opposed to machine code – that can run on any computer architecture using a “Java Virtual Machine”, or JVM for short.
This portability, along with its scalability, performance and reliability set Java up for the next 21 years. Popular big data tools such as Hadoop, Cassandra and Spark are written in Java so it’s no coincidence the language is popular for data analytics too, especially as the basis for large and complex projects.
R is widely used among statisticians and data miners for data analysis, in fact it is probably the most popular language for pure data science. By using just a few lines of code you can sift through complex data sets, manipulate data using sophisticated modelling functions and create slick graphics. The R language is backed by an active community that is constantly adding new packages and features to its already rich function sets.
It is often considered as more of a prototyping language, to test out ideas and manipulate data before handing off the model to be rewritten in Java or Python. It was not considered fast or stable enough, but this thinking is becoming outdated as R can now be integrated directly into a fast database to work on the data natively.