Udacity has a huge selection of courses on many subjects in computer science. Each course consists of several lessons, each with a series of videos, quizzes and problems to work through. Many of these courses are free, but there are paid courses for even greater depth of material. Courses tend to be project-based, so by the end you will have completed a step-by-step process for creating a product, such as a weather app. This makes it a great place to learn for those who prefer practical applications for practicing their skills.
Where to start…
You can view the Udacity course catalog here. It is searchable using a variety of filters. Create an account here and get started!
Intro to Java Programming – This course is both an intro to coding and an intro to the Java programming language.
Java Programming Basics – Once you have the fundamentals of programming under your belt, this course will take you further into Java.
Android App Development for Beginners – This course boasts “no coding experience necessary”. Through this course you will be introduced to coding, the Java programming language and Android app development.
Developing Android Apps – If you already have some knowledge of Java, this course is a good in-depth look at how to make good apps.
Advanced Android App Development – Once you know Java and have some experience with Android development, this course will help elevate you towards professional level development.