Top 5 ways to learn programming
- MIT's Introduction to Computer Science and Programming Using Python
This course is provided free of cost by one of the best institutions in the world. The instructors are tenured professors who break down the subject for anyone to follow. As long as you understand basic mathematics, this course should not be a hassle for you to complete. It also sets an ideal foundation for one to learn advanced courses. Python in general is a powerful and easy to read language. - Codecademy - Learn Java
Codecademy is a great platform for newbies and experienced developers to learn new languages and frameworks. The content is curated exceptionally well and caters to its audience who may be beginners or senior developers. Java in particular is a great language to learn as it is ubiquitous and is used in many different domains in the software industry. Moreover the object oriented system of programming that is generally used in business applications is easy to comprehend in Java. Learning Java will give you a great opportunity to understand core concepts that are part of multiple languages.
3. W3Schools
One of the oldest freemium education websites on the Internet, W3Schools continues to provide a great learning experience for programmers who enjoy to code as they learn. If you are not a fan of sticking with a course to completion and would rather see things in action as soon as possible, then W3Schools is your friend. It provides the exact amount of information required for you to understand a concept and it aims to walk you through the key concepts of each language. HTML and CSS were popular courses back in the day. JavaScript and Python courses on this platform are also a great starting point for a newbie.
If you are into books more than courses, then this book is a great introduction to programming.
5. Learn by coding
This is probably the most counterintuitive method to learn as a newbie but this is how hackers learnt to code back in the day. By copying scripts, running them and seeing what it did! This is the most time-consuming way to learn, but it helps develop the endurance and patience required to survive and thrive in a software engineering gig. I would recommend that you first learn the basics of a language from the above options and then think of a project to complete and share with the world. Even though you may not understand everything that your code does and a lot of your scripts may be things you try for the first time, you will get the hang of testing and reworking your code till it is somewhat ready. Try and execute the project and see what it takes to deploy a piece of code out into the real world!
Happy coding! Cheers! :D