/learn-to-program

Education resources to learn to program

Learn to Program Awesome

Foundation in Web Development

The Internet is filled with an ever-expanding number of courses, books and guides for programmers of all skill levels to improve their skills. Unfortunately, these resources are either hard to find or of low quality.

This list aims to be a curated set of high quality educational resources. The cost of the platform is highlighted along with the primary topics covered.

Beginner

Free community and toolset to learn to create web pages and apps
(HTML, CSS, JavaScript?)

Free platform for learning to code in web technologies
(HTML, CSS, JavaScript, jQuery, Python, Ruby, Rails, PHP)

Free interactive 1-hour course to learn the very basics of web development
(HTML, CSS, JavaScript, SQL)

Commercial platform for courses how to build websites & apps
(Web Design, Front End Web Development, Rails, iOS, Android, PHP)

Free tutorial for how to do layout with CSS
(CSS)

Freemium marketplace of courses from third party providers. Quality may vary.
(HTML, CSS, JavaScript, Ruby, Rails, Python, iOS, Android)

Freemium platform for basic web and app develoment courses
(HTML, CSS, JavaScript)

Free beginner to intermediate guides on web development
(HTML, CSS, JavaScript)

Free beginner and intermediate guides on web development
(HTML, CSS, JavaScript)

Mixed curated learning tracks for computer programming
(web development, JavaScript, AngularJS, Ruby, Rails, iOS, Haskell, computer science)

Mixed directory of courses, videos and other learning resources for web development and programming. Quality may vary.
(HTML, CSS, JavaScript, AngularJS, Rails)

Free Platform for classes on Design, Marketing, Startup and Code. Learn the future of the web.
(RethinkDB, SailsJs, NodeJS, Git, Startup Class, etc)

Free Learn to code and help nonprofits. An open source community of people who learn to code and help nonprofits.
(HTML, CSS, Javascript, Databases, Git & GitHub, Node.js, React.js, D3.js)

Free SQL courses with interactive exercises and quizzes
(SQL, database concepts)

Free Self paced, interactive projects to learn Git and GitHub. Created and maintained by GitHub's training team.
(Git, GitHub)

Intermediate

Free intermediate to advanced courses on how to program drawings, animations, games and webpages and more advanced computer science topics
(HTML, CSS, JavaScript, algorithms, cryptography)

Freemium platform for courses about web technologies, iOS development and related tools
(HTML, CSS, Sass, JavaScript, AngularJS, Ruby, Rails, iOS, Git)

Free platform for computer science and web development courses
(HTML, CSS, JavaScript, data science, Python, computer science topics)

Free (book only) book and course for beginner through intermediate Python programming
(Python, object-oriented programming, web development)

Free interactive tutorials for Ruby on Rails and Android
(Ruby, Rails, Android)

Free online book covering all stages of creating a Ruby on Rails application
(HTML, CSS, JavaScript, Ruby, Rails)

Lynda.com Developer, Web, IT

Freemium platform for video courses on web development and intermediate programming
(HTML, CSS, JavaScript, programming fundamentals, system administration, ...)

Commercial platform for mentored web and mobile development courses from industry experts
(web development, frontend web development, AngularJS, Android, iOS)

Free crowdsourced mentorship platform of programming exercises and code reviews
(Clojure, CoffeeScript, C++, C#, Elixir, Erlang, F#, Go, Haskell, JavaScript, Common Lisp, Lua, Objective-C, OCaml, Perl 5, PL/SQL, Python, Ruby, Scala, Swift)

Free crowdsourced list of videos and courses for learning programming and web development
(HTML, CSS, JavaScript, Java, Haskell, Python)

Free programming and mobile development courses on iTunes from Stanford University
(programming, startups, iOS)

Commercial platform for web development courses
(JavaScript, AngularJS, Java)

Free intermediate to advanced programming problems
(programming)

Free practice problems in Python and Java
(Python, Java)

Free code challenges. Compare your solution with those of others.
(JavaScript, CoffeeScript, Ruby, Python, Clojure, Haskell, Java)

Free Learn to code and game at the same time.
(C#, C++, Java, Javascript, Python, Bash, C, Clojure, Dart, F#, Go, Groovy, Haskell, Lua, ObjectiveC, Pascal, Perl, PHP, Ruby, Rust, Scala, Swift, VB.NET)

Advanced

Free courses from MIT on advanced computer science topics
(varied and extensive computer science topics, C, C++, ..)

Free platform for courses from the top universities and organizations worldwide
(varied computer science subjects including theory and programming, data science, algorithms, ...)

Free university-level courses scoured from around the internet.
(varied and extensive computer science topics, ...)

Free graphs of interconnected topics required to master concepts
(programming, machine learning)

Free programming challenges and contests
(artificial intelligence, algorithms, functional programming, machine learning)

Free programming challenges, hackathons and contests
(dynamic programming,artificial intelligence, algorithms, functional programming, machine learning)

Free mathematical/computer programming problems
(programming, mathematics)

Free programming challenges
(Java, C++, Python, Javascript, Ruby, C#, PHP and Perl)

License

CC0

To the extent possible under law, Karl Horky has waived all copyright and related or neighboring rights to this work.

Contributing

In lieu of a formal styleguide, take care to maintain the existing style of this list.