Advent of Code is an Advent calendar of small programming puzzles for a variety of skill sets and skill levels that can be solved in any programming language you like. People use them as a speed contest, interview prep, company training, university coursework, practice problems, or to challenge each other.
Interested in learning to build an Android App? This is the place for you. This is a step-by- step guide that will help learn to build apps for Google’s Android platform.
BoogieJack.com is an HTML help site featuring standards-based HTML tutorials, CSS tutorials, HTML Code demonstrations, HTML Code Charts and other website design help and resources.
CodeStepByStep is an online coding practice tool that has thousands of exercises to help you learn and practice programming in a variety of popular languages.
CodingBat is a free site of live coding problems to build coding skill in Java and Python (example problem). CodingBat is a project by Nick Parlante, a computer science lecturer at Stanford.
Cprogramming.com covers both C and C++ in-depth, with both beginner-friendly tutorials, more advanced articles, and the book Jumping into C++, which is a highly reviewed, friendly introduction to C++.
This is a better resource for more advanced programmers – EdX offers tons of free courses, with the added bonus of being able to add on a completion certificate for around $49. A few examples? Introduction to Mobile Application Development and Autonomous Navigation for Flying Robots.
Hour of Code is a great resource for beginners! This website is loaded with games and activities designed to introduce anyone to the world of programming. Each activity takes about an hour, and there are hundreds to choose from.
Khan offers courses from basic to advanced in interesting areas. A few examples are Intro to JS (Javascript): Drawing and Animation, and Intro to SQL: Querying and Managing Data. After you’ve mastered the basics, there are more tutorials to help build your first projects.
MIT offers many free courses, from beginner to advanced. There are courses in other subject areas as well. If you’re a complete beginner, you may want to learn the basics on another site before delving into more intricate subjects here.
"The Odin Project is one of those "What I wish I had when I was learning" resources. Not everyone has access to a computer science education or the funds to attend an intensive coding school and neither of those is right for everyone anyway. This project is designed to fill in the gap for people who are trying to hack it on their own but still want a high quality education."
Practice-it is a web application to help you practice solving Java programming problems online. Many of the problems come from the University of Washington's introductory Java courses.
W3Schools creates simplified and interactive learning experiences. Learning web development should be easy to understand and available for everyone, everywhere! W3Schools is a school for web developers, covering all the aspects of web development.
This page provides a list of free tools and resources that support accessible web design and development. The list is a work in progress, and is updated regularly as tools and resources evolve.