...
Full Bio
Use Machine Learning To Teach Robots to Navigate by CMU & Facebook Artificial Intelligence Research Team
270 days ago
Top 10 Artificial Intelligence & Data Science Master's Courses for 2020
271 days ago
Is Data Science Dead? Long Live Business Science
299 days ago
New Way to write code is about to Change: Join the Revolution
300 days ago
Google Go Language Future, Programming Language Programmer Will Get Best Paid Jobs
621 days ago
Top 10 Best Countries for Software Engineers to Work & High in-Demand Programming Languages
736596 views
Highest Paying Programming Language, Skills: Here Are The Top Earners
670887 views
Which Programming Languages in Demand & Earn The Highest Salaries?
476067 views
Top 5 Programming Languages Mostly Used By Facebook Programmers To Developed All Product
474495 views
World's Most Popular 5 Hardest Programming Language
415779 views
Which Languages Should You Learn For Data Science, Here to Start?
- Excellent range of high-quality, domain-specific and open source packages. R has a package for almost every quantitative and statistical application imaginable. This includes neural networks, non-linear regression, phylogenetics, advanced plotting and many, many others.
- The base installation comes with very comprehensive, in-built statistical functions and methods. R also handles matrix algebra particularly well.
- Data visualization is a key strength with the use of libraries such as ggplot2.
- Performance. There are no two ways about it, R is not a quick language.
- Domain specificity. R is fantastic for statistics and data science purposes. But less so for general purpose programming.
- Quirks. R has a few unusual features that might catch out programmers experienced with other languages. For instance: indexing from 1, using multiple assignment operators, unconventional data structures.
- Python is a very popular, mainstream general-purpose programming language. It has an extensive range of purpose-built modules and community support. Many online services provide a Python API.
- Python is an easy language to learn. The low barrier to entry makes it an ideal first language for those new to programming.
- Packages such as pandas, scikit-learn and Tensorflow make Python a solid option for advanced machine learning applications.
- Type safety: Python is a dynamically typed language, which means you must show due care. Type errors (such as passing a String as an argument to a method which expects an Integer) are to be expected from time-to-time.
- For specific statistical and data analysis purposes, R's vast range of packages gives it a slight edge over Python. For general purpose languages, there are faster and safer alternatives to Python.
- Very efficient at querying, updating and manipulating relational databases.
- The declarative syntax makes SQL an often very readable language. There's no ambiguity about what SELECT name FROM users WHERE age > 18 is supposed to do!
- SQL is very used across a range of applications, making it a very useful language to be familiar with. Modules such as SQLAlchemy make integrating SQL with other languages straightforward.
- SQL's analytical capabilities are rather limited - beyond aggregating and summing, counting and averaging data, your options are limited.
- For programmers coming from an imperative background, SQL's declarative syntax can present a learning curve.
- There are many different implementations of SQL such as PostgreSQL, SQLite, MariaDB. They are all different enough to make inter-operability something of a headache.
- Ubiquity. Many modern systems and applications are built upon a Java back-end. The ability to integrate data science methods directly into the existing codebase is a powerful one to have.
- Strongly typed. Java is no-nonsense when it comes to ensuring type safety. For mission-critical big data applications, this is invaluable.
- Java is a high-performance, general purpose, compiled language. This makes it suitable for writing efficient ETL production code and computationally intensive machine learning algorithms.
- For ad-hoc analyses and more dedicated statistical applications, Java's verbosity makes it an unlikely first choice. Dynamically typed scripting languages such as R and Python lend themselves to much greater productivity.
- Compared to domain-specific languages like R, there aren't a great number of libraries available for advanced statistical methods in Java.
- Scala + Spark = High performance cluster computing. Scala is an ideal choice of language for those working with high-volume data sets.
- Multi-paradigmatic: Scala programmers can have the best of both worlds. Both object-oriented and functional programming paradigms available to them.
- Scala is compiled to Java bytecode and runs on a JVM. This allows interoperability with the Java language itself, making Scala a very powerful general-purpose language, while also being well-suited for data science.
- Scala is not a straightforward language to get up and running with if you're just starting out. Your best bet is to download sbt and set up an IDE such as Eclipse or IntelliJ with a specific Scala plug-in.
- The syntax and type system are often described as complex. This makes for a steep learning curve for those coming from dynamic languages such as Python.
- Julia is a JIT ('just-in-time') compiled language, which lets it offer good performance. It also offers the simplicity, dynamic-typing and scripting capabilities of an interpreted language like Python.
- Julia was purpose-designed for numerical analysis. It is capable of general purpose programming as well.
- Readability. Many users of the language cite this as a key advantage
- Maturity. As a new language, some Julia users have experienced instability when using packages. But the core language itself is reportedly stable enough for production use.
- Limited packages are another consequence of the language's youthfulness and small development community. Unlike long-established R and Python, Julia doesn't have the choice of packages (yet).
- Designed for numerical computing. MATLAB is well-suited for quantitative applications with sophisticated mathematical requirements such as signal processing, Fourier transforms, matrix algebra and image processing.
- Data Visualization. MATLAB has some great inbuilt plotting capabilities.
- MATLAB is often taught as part of many undergraduate courses in quantitative subjects such as Physics, Engineering, and Applied Mathematics. As a consequence, it is widely used within these fields.
- Proprietary license. Depending on your use-case (academic, personal or enterprise) you may have to fork out for a pricey license. There are free alternatives available such as Octave. This is something you should give real consideration to.
- MATLAB isn't an obvious choice for general-purpose programming.
"If you're writing code to do some ad-hoc analysis that will probably only be run one time, would you rather spend 30 minutes writing a program that will run in 10 seconds, or 10 minutes writing a program that will run in 1 minute?"
- Late to the game (Node.js is only 8 years old!), meaning�¢?�¦
- Few relevant data science libraries and modules are available. This means no real mainstream interest or momentum
- Performance-wise, Node.js is quick. But JavaScript as a language is not without its critics.