Home

Awesome

Curated Programming Resources

A curated and annotated list of resources for learning programming and computer science.

Motivation and goals

Currently, we're living in a sort of "programming renaissance". Programming and computer science is become more popular then ever -- major initiatives like the Hour of Code is popularizing learning programming across the world, and the number of people interested in majoring in computer science is growing exponentially.

As a consequence, there is an increasingly huge number of resources and tutorials being produced for beginners who want to learn to code, ranging from books to online tutorials to interactive websites to massive open online courses (MOOCS) like Codecademy and Coursera.

While this is great, it can also be overwhelming for beginners -- there are almost too many resources available, and it's difficult to figure out where to start.

This page is meant to help solve that problem -- to present a curated list of resources for people who are either new to programming, new to a particular topic, or want to advance their skills past the beginner stage. This page doesn't try and list every single resource available, but instead links to resources that are guaranteed to be high-quality.

Contributing

Any contributions, feedback, or suggestions are welcome, so long as they meet the guidelines described in CONTRIBUTING.md.

To make a contribution, either open a pull request or file an issue towards the right.