Skip to content

Latest commit

 

History

History

Languages

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

Programming Languages

List of Programming languages for Machine Learning, Artificial Intelligence and Data Science

Overview

Language Designer(s) Year
Python Guido van Rossum February 1991
R Ross Ihaka and Robert Gentleman August 1993
SQL Donald D. Chamberlin and Raymond F. Boyce 1974
Java James Gosling May 23, 1995
Julia Jeff Bezanson, Alan Edelman, Stefan Karpinski, Viral B. Shah 2012
Prolog Alain Colmerauer, Robert Kowalski 1972
C++ Bjarne Stroustrup 1985
LISP Steve Russell, Timothy P. Hart, and Mike Levin 1958
MATLAB Cleve Moler 1970s
Scala Martin Odersky 20 January 2004

python

Python

Python is the ideal coding language used for machine learning, NLP, and neural network connections. Python can be used even if you are new to AI development since it is flexible and comes with pre-existing libraries like Pandas, SciPy, and nltk. Python language is lauded for its simple syntax and minimal codes. Python uses readable keywords, provides object-oriented-programming, and can be integrated with other languages like Java. The development speed of Python is comparatively faster and allows algorithm testing without actually running them.

Online Courses 💻
  1. Complete Python Bootcamp: Go from Zero to Hero in Python 3
  2. Python 3 Tutorial from Codeacademy
  3. Complete Python Masterclass
  4. The Python Mega Course: Build 10 Real World Applications
  5. Python for Everybody Specialization
Textbooks 📚
  1. Python Crash Course, Eric Matthews
  2. Automate the Boring Stuff with Python, 2nd Edition: Practical Programming, Total Beginners by Al Sweigart
  3. Learning Python, 5th Edition, Mark Lutz
  4. Head-First Python, Paul Barry
Youtube 📹
  1. Telusko
  2. CS Dojo
  3. Corey Schafer
  4. Sentdex
Articles 🖋️
  1. Asynchronous Programming in Python: A Walkthrough, David Bolton
  2. Buggy Python Code: The 10 Most Common Mistakes That Python Developers Make, Martin Chikilian
  3. How to build your own Neural Network from scratch in Python, James Loy
Communities 🧑‍🤝‍🧑
  1. r/Python
  2. r/learnpython
  3. gfg/PythonProgrammingLanguage

R

R

R is an incredible programming language for machine learning written by a statistician for statisticians. R language can also be used by non-programmer including data miners, data analysts, and statisticians. R programming language is a fantastic choice when it comes to crunching large numbers and is the preferred choice for machine learning applications that use a lot of statistical data. With user-friendly IDE’s like RStudio and various tools to draw graphs and manage libraries – R is a must-have programming language in a machine learning engineer’s toolkit.

Online Courses 💻
  1. R Programming by John Hopkins University
  2. Data Science R Basics Certificate by Harvard University
  3. R Training Course
  4. R Programming A - Z: R for Data Science
Textbooks 📚
  1. R for Data Science, Hadley Wickham & Garrett Grolemund
  2. The book of R, Tilman M. Davies
  3. R For Dummies, Andrie de Vries & Joris Meys
  4. Discovering Statistics Using R, Andy Field, Jeremy Miles & Zoe Field
Youtube 📹
  1. R-programming Library
  2. R programming
  3. Data Science Tutorials
  4. RStudio
Communities 🧑‍🤝‍🧑
  1. r/Rlanguage
  2. r/programming

SQL

SQL

SQL (Structured Query Language) is one of the most requested skills in Data Science. SQL is a programming language used for querying and managing data in relational databases. Relational Databases are formed by collections of two-dimensional tables (eg. Datasets, Excel Spreadsheets). Together with Python and R, SQL is now considered to be one of the most requested skills in Data Science

Online Courses 💻
  1. The Ultimate MySQL Bootcamp: Go from SQL Beginner to Expert
  2. Excel to MySQL: Analytic Techniques for Business Specialization
  3. The Complete SQL Bootcamp 2020: Go from Zero to Hero
  4. SQL for Data Science
Textbooks 📚
  1. Sams Teach Yourself SQL in 10 Minutes, Ben Forta
  2. Learning SQL, Alan Beaulieu
  3. SQL: The Ultimate Beginners Guide: Learn SQL Today, Steve Tale
  4. SQL: QuickStart Guide – The Simplified Beginner’s Guide To SQL, Clydebank Technology
Youtube 📹
  1. Manish Sharma
  2. Pinal Dave
  3. The Magic of SQL
  4. SQL Workbooks
Communities 🧑‍🤝‍🧑
  1. r/SQL
  2. r/SQLServer

java

Java

Java is one of the popular programming languages which has a multitude of open-source libraries. Java is user-friendly and provides an independent platform and hence is considered good for developing AI. This is a standard and flexible programming language that offers easier debugging of codes, scalability, the ability to support large-scale enterprises, and graphical representation of data. Java is easy to learn, versatile, and its Virtual Machine Technology enables the development of AI language on different platforms.

Online Courses 💻
  1. Object Oriented Programming in Java Specialization
  2. The Complete Java Masterclass
  3. Java Programming: Solving Problems with Software
  4. Java Fundamentals
  5. Java Programming for Complete Beginners
Textbooks 📚
  1. Core Java Volume I – Fundamentals, Cay S. Horstmann
  2. Effective Java, Joshua Bloch
  3. Java: A Beginner’s Guide, Herbert Schildt
  4. Java - The Complete Reference, Herbert Schildt
Youtube 📹
  1. Derak Banas's Playlist
  2. The New Boston
  3. Programming With Mosh
  4. freeCodeCamp.org
  5. Telusko
Communities 🧑‍🤝‍🧑
  1. r/learnjava
  2. r/javahelp

julia

Julia

Julia is a high-performance, general-purpose dynamic programming language emerging as a potential competitor for Python and R with many predominant features exclusively for machine learning. Having said that it is a general-purpose programming language and can be used for the development of all kinds of applications, it works best for high-performance numerical analysis and computational science. With support for all types of hardware including TPU’s and GPU’s on every cloud, Julia is powering machine learning applications at big corporations like Apple, Disney, Oracle, and NASA.

Online Courses 💻
  1. Getting Started With Julia
  2. Julia Scientific Programming
  3. Introduction to Julia
  4. Coding for non-programmers in Julia
Textbooks 📚
  1. Think Julia: How to Think Like a Computer Scientist, Ben Lauwens & Allen Downey
  2. Hands-On Design Patterns and Best Practices with Julia, Tom Kwong
  3. Julia Language: A Concise Tutorial, Antonello Lobianco
  4. The Julia Express, Bogumił Kaminski
Youtube 📹
  1. The Julia Programming Language
  2. Julia Computing
Communities 🧑‍🤝‍🧑
  1. r/Julia

prolong

Prolog

One of the oldest programming languages, Prolog or logical programming is a powerful framework that works with three elements- facts, rules, and goals. A developer should define all three elements and then Prolog establishes relations between them to reach a certain conclusion by analyzing facts and rules. Here, the implementation of algorithms happens through logical inferences and searches and this language is great for developing AI systems since the solutions are logical and not just based on pre-existing statements. Prolog is best for creating chatbots, voice assistants, and graphical user interfaces (GUI).


c++

C++

C++ is an extension of the C programming language and can be used to build neural networks. The speed of C++ is the greatest benefit since AI development has complex computations and this language can make the calculations faster. It has a low-level memory control feature and carries asset-compelled applications, performance-critical applications, etc. C++ has a complex syntax but is cost-efficient compared to other languages like Java. C++ can be used in AI programming for search engine optimization and ranking.

Online Courses 💻
  1. C++ Nanodegree Certification for Programmers
  2. Beginning C++ Programming – From Beginner to Beyond
  3. Unreal Engine C++ Developer: Learn C++ and Make Video Games
  4. C++ Courses & Tutorials Online – Learning Path
  5. Learn C++ Programming – Beginner to Advance – Deep Dive in C++
Textbooks 📚
  1. C++ Primer, Stanley B. Lippman, Josée Lajoie, and Barbara E. Moo
  2. Effective Modern C++ book, Scott Meyers
  3. The C++ Programming Language, Bjarne Stroustrup
  4. Accelerated C++: Practical Programming, Example by Andrew Koenig and Barbara E. Moo
Youtube 📹
  1. The Cherno
  2. LearningLad
  3. Programming Knowledge
  4. Naresh technologies
Communities 🧑‍🤝‍🧑
  1. r/cpp
  2. r/Cplusplus

LISP

LISP

LISP or list processing was created in 1958 by John McCarthy that is suitable for AI development. LISP is flexible and adapts to the solution and can be effectively used for machine learning. LISP is known for rapid prototyping and the dynamic creation of new objects. Although LISP is not popularly used now since the codes are harder to learn and it does not have good libraries. There are many implementations of Lisp. Popular open source versions include SBCL, GNU Lisp, and GNU Common Lisp (GCL).

Online Courses 💻
  1. The Lisp Programming Language
  2. LISP Courses
Textbooks 📚
  1. LISP Lore A Guide to Programming the LISP Machine, H. Bromley, Richard Lamson
  2. COMMON LISP: An Interactive Approach, Stuart C. Shapiro
  3. Common Lisp: A Gentle Introduction to Symbolic Computation, David S. Touretzky
  4. Programming in Common LISP, Podney Brooks
Youtube 📹
  1. Derek Banas
  2. Knoldus Inc.
  3. MIT OpenCourseWare
  4. Professor Hank Stalica
Articles 🖋️
  1. LISP Quickstart
  2. LISP Tutorial
  3. Common Lisp Quick Reference by Bert Burgemeister
  4. Common Lisp Koans by Stanley Bileschi
  5. Lisp Quickstart by Sean Luke
  6. Learning Lisp for CMPT 310 by Philip Fong
Communities 🧑‍🤝‍🧑
  1. r/lisp
  2. r/Common_Lisp
  3. r/common_lisp

matlab

MATLAB

MATLAB supports interoperability with other open source deep learning frameworks such as ONNX. Users can choose MATLAB for locating capabilities and prebuilt purposes and applications which are not available in other programming languages. The fundamental structure has a basic data element in a matrix. A simple integer is recognised as a matrix of one row and one column. Different mathematical methods that work on arrays or matrices are built into the Matlab environment. These features make the programming language very effective for implementing deep learning.

Online Courses 💻
  1. Become a Good Matlab Programmer in 30 Days
  2. Master MATLAB Through Guided Problem Solving
  3. Introduction to Programming with MATLAB
  4. Learn MATLAB for Free
  5. Matlab Training
  6. MATLAB Master Class: Go from Beginner to Expert in MATLAB
Textbooks 📚
  1. MATLAB For Beginners, H. Peter I. Kattan
  2. Process Control – A First Course with MATLAB, Pao Chau
  3. MATLAB for Dummies, Willey Brand
  4. Practical Matlab Basics for Engineers, Misza Khalechman
Youtube 📹
  1. MATLAB
  2. Anselm Griffin
  3. Uniformedia
  4. MATLAB Solutions
  5. MATLAB Helper
Communities 🧑‍🤝‍🧑
  1. r/matlab

scala

Scala

Scala is significantly faster than Python, and brings the best of object oriented and functional programming to one high-level language. It was originally built for the Java Virtual Machine (JVM) and is very easy to interact with Java Code. Developers can easily build high-performance systems, while avoiding bugs through Scala’s use of static types.

Online Courses 💻
  1. Scala & Functional Programming for Beginners
  2. Scala: The Big Picture
  3. Functional Programming in Scala Specialization
  4. Advanced Scala and Functional Programming
  5. Scala and Spark for Big Data and Machine Learning
  6. Learn Scala from Scratch
Textbooks 📚
  1. Programming in Scala, Fourth Edition, Martin Odersky, Lex Spoon and Bill Venners
  2. Functional Programming in Scala, Paul Chiusano and Rúnar Bjarnason
  3. Scala for the Impatient, Cay S. Horstmann
  4. Scala Puzzlers, Neil Gafter and Joshua Bloch
Youtube 📹
  1. DevInsideYou
  2. Telusko
  3. Derek Banas
  4. Programming Knowledge
  5. Rock the JVM
Communities 🧑‍🤝‍🧑
  1. r/scala