There are many resources to learn programming so I am listing some of them.

Free Programming Books:

Free programming books available online.You can download them for free in PDF format.

  1. EbookFoundation/free-programming-books This is the GitHub repository containing free books on Algorithm and data structures in different languages.
  2. Free Programming Books; HTML5, CSS3, JavaScript, PHP, Python…

Programming books:

Programming books on algorithms and data structure available on amazon.These books are very helpful for depth learning and gives good knowledge of competitive programming which helps in online coding rounds and competition.

Online coding competition

  1. Google’s Coding Competitions – Code Jam, Hash Code and Kick Start
  2. Facebook Coding Competitions
  3. Student Developer Competitions | Imagine Cup

Online courses

  1. Coursera | Build Skills with Online Courses from Top Institutions
  2. Online Courses – Learn Anything, On Your Schedule | Udemy
  3. Learn the Latest Tech Skills; Advance Your Career | Udacity
  4. Youtube playlist: MIT 6.006 Introduction to Algorithms, Fall 2011
  5. edX | Free Online Courses by Harvard, MIT, & more

YouTube Channels

  1. Gate Smashers
  2. Anuj Bhaiya
  3. Love Babbar
  4. code_report
  5. freeCodeCamp.org
  6. edureka!

Coding websites

  1. GeeksforGeeks | A computer science portal for geeks
  2. W3Schools Online Web Tutorials

Coding platforms to practice

  1. HackerRank
  2. Programming Challenges, and Coding Competitions on HackerEarth
  3. https://codeforces.com/
  4. LeetCode – The World’s Leading Online Programming Learning Platform
  5. | Design & Build High-Quality Software with On-Demand Talent
  6. CodeChef | Competitive Programming | Participate & Learn | CodeChef