COMPASS FOR LEARNING
ARTIFICIAL INTELLIGENCE - LOGIC, REASONING, AND PLANNING
By Georgia Tech
This course is by Georgia Tech and is provided by Udacity. This class will teach you about using logic and reason within an AI to plan problems. It is advanced, and you must know about Graph Theory, Set Theory, Logic, Data Structures, and Python. This class is free.

ARTIFICIAL INTELLIGENCE - PROBABALISTIC MODELS
By Georgia Tech
This course is by Georgia Tech and is provided by Udacity. You will learn about Bayesian Networks, Hidden Markov Models, and Model Selection. This class is advanced, and you must know about Graph Theory, Set Theory, Probability and Statistics, Linear Algebra, and Python. This class is free.

ARTIFICIAL INTELLIGENCE - NATURAL LANGUAGE PROCESSING
By IBM Watson
This course is by IBM Watson ad is provided by Udacity. This class will teach you about Natural Language Processing. It is advanced, and you must know about Differential Calculus, Linear Algebra, Deep Learning, and Python. This class is free.

ARTIFICIAL INTELLIGENCE - VOICE USER INTERFACES
By Amazon Alexa
This course is by Amazon Alexa and is provided by Udacity. This class will teach you about Audio signal representation, language modeling, and Deep learning speech recognition. It is advanced, and you must know about Differential Calculus, Linear Algebra, Deep Learning, and Python. This class is free.

LEARN ABOUT ARTIFICIAL INTELLIGENCE
Here you will find tutorials and guides on Artificial Intelligence. There are many resources available for both beginners and experts. The majority of the resources that are listed are free.
LEARN JAVA
By Codecademy
This is an online course that is provided by Codecademy. However, only part of this class is free. In the first chapter, you will learn the absolute basics of Java, such as how to use variables. To access the rest of this class, you must pay a monthly fee. The entire course is for beginners, and may take approximately 4 hours to complete.

PRACTICE JAVA BY BUILDING PROJECTS
By Tim Short
This course is by Tim Short and is provided by Udemy. This class will teach you beginner to advanced Java programming concepts and will help you create your own applications from scratch. This course is for beginners, and may take approximately 3.5 hours to complete. This course is free.

JAVA - THE BEGINNERS SERIES
By Michel McAlexander
This course is by Michel McAlexander and is provided by Udemy. This class will give you an "overview of all the core concepts in Java to build a strong foundation in your computer programming skills". This course is for beginners, and may take approximately 6 hours to complete. This course is free.

EASY-TO-FOLLOW JAVA PROGRAMMING - GETTING STARTED WITH JAVA
By Duckademy IT Courses
This course is by Duckademy IT and is provided by Udemy. This class will teach how to program in Java in an "easy and entertaining way". This course is for beginners, and may take approximately 1.5 hours to complete. This course is free.

A COMPREHENSIVE JAVA FOR BEGINNERS COURSE (CORE CONCEPTS)
By StudyEasy Organization and Chaand Sheikh
This course is by the StudyEasy Organization and Chaand Sheikh, and is provided by Udemy. This class will teach you how to program in Java, as well as how to code console applications. This course is for beginners, and may take approximately 9 hours to complete. This course is free.

JAVA PROGRAMMING FUNDAMENTALS
By Zakaria Chowdhury
This course is by Zakaria Chowdhury and is provided by Udemy. This class will help develop your programming skills in Java and improve your logical thinking. This class is for beginners, and may take approximately 1 hour to complete. This course is free.

JAVA PROGRAMMING BASICS
By Charles Mulic
This course is by Charles Mulic and is provided by Udemy. This class teaches you how to code Java programs from scratch, as well as the process of how code gets executed. This class is for beginners, and may take approximately 3 hours to complete. This course is free.

LEARNING TO PROGRAM IN JAVA
Here you will find tutorials and guides on how to write code using the Java programming language. There are many resources available for both beginners and experienced programmers. The majority of the resources that are listed are free.
INTRO TO COMPUTER SCIENCE
By Udacity
This is an online course that is provided by Udacity. Not only will you learn Python in this class, but you will also learn the basics of Computer Science in general. This course is for beginners, and may take approximately 3 months to complete. This course is free.

PROGRAMMING FOUNDATIONS WITH PYTHON
By Udacity
This is another online course that is provided by Udacity. Unlike the previous course, this class is primarily focused on teaching you the basics of coding in Python. This course is for beginners, and may take approximately 6 weeks to complete. This course is free.

LEARN PYTHON
By Codecademy
This is an online course that is provided by Codecademy. However, only part of this class is free. In the first chapter, you will learn the absolute basics of Python, such as how to use variables. To access the rest of this class, you must pay a monthly fee. The entire course is for beginners, and may take approximately 10 hours to complete.

PROGRAMMING WITH PYTHON: HANDS-ON INTRODUCTION FOR BEGINNERS
By Febin George
This course is by Febin George and is provided by Udemy. This class will teach you the fundamentals of programming as well as the Python language. This course is for beginners, and may take approximately 3.5 hours to complete. This course is free.

PYTHON FOR ABSOLUTE BEGINNERS
By Green Chameleon Learning
This course is by Green Chameleon Learning and is provided by Udemy. This class will teach you the fundamentals of Computer Science, the basics of Python programming, and how to use Pycharm to write. This course is for beginners, and may take approximately 3.5 hours to complete. This course is free.

PYTHON FOR BEGINNERS WITH EXAMPLES
By Ardit Sulce
This course is by Ardit Sulce and is provided by Udemy. This class will teach you to write non-complex programs in Python, as well as input and output data. This course is for beginners, and may take approximately 2 hours to complete. This course is free.

INTERACTIVE PROGRAMMING IN PYTHON
By Appin Technology Lab
This course is by the Appin Technology Lab and is provided by Udemy. This class teach you the basics of Python and how to program using Spyder. This course is for beginners, and may take approximately 1.5 hours to complete. This course is free.

LEARN PYTHON PROGRAMMING
Here you will find tutorials and guides on how to write code using the Python programming language. There are many resources available for both beginners and experienced programmers. The majority of the resources that are listed are free.

PROGRAMMING AND ARTIFICIAL INTELLIGENCE
Resources for learning different programming languages, as well as resources for learning more about Artificial Intelligence.