4 answers
Asked
204 views
what is a good source to learn programing
I am a high school student who wants to get into programming as a job but I don't really know where to learn it I know some python but not much
Login to comment
4 answers
Joshua Allard, Ph.D.
Data Science & AI, Quantum AI designer developer
39
Answers
Port St. Lucie, Florida
Updated
Joshua’s Answer
There are many fantastic resources to help you dive deeper into programming and develop the skills you’ll need for a tech career. Since you already know some Python, you’re off to a great start—Python is widely used and a beginner-friendly language that can be applied to web development, data science, AI, and more. To build your knowledge and explore other programming languages, online platforms like Codecademy, FreeCodeCamp, and Khan Academy offer interactive lessons that make learning programming accessible and engaging. Codecademy is primarily known for its clear, hands-on classes in Python, Java, JavaScript, and other in-demand languages, so it’s a great place to start if you want to explore different programming areas.
For a more structured learning experience, Coursera and edX provide programming courses from professors like Stanford and MIT. These platforms offer both beginner and advanced courses in computer science fundamentals, which can help you understand the “why” behind programming concepts. Many courses on Coursera and edX also offer certificates, which you can add to your resume as you build skills.
If you prefer a more project-based approach, FreeCodeCamp is a fantastic option that teaches coding through real-world projects and provides a clear learning path in web development, JavaScript, data analysis, and more. The curriculum is comprehensive, and by the time you finish, you’ll have a portfolio of projects demonstrating your skills. Kaggle is another excellent resource, especially if you want to use Python for data science. Kaggle offers beginner-friendly exercises and real-world datasets, making it an ideal choice if you’re interested in data-driven programming.
To enhance your problem-solving abilities, websites like HackerRank and LeetCode offer coding challenges that allow you to practice and apply what you’re learning fun and competitively. Programmers of all skill levels widely use these platforms, and they are also great for preparing for technical interviews in the future.
As you progress, consider joining coding communities like GitHub, where you can collaborate on open-source projects. Working with others on real projects will give you valuable hands-on experience, and GitHub is a great way to showcase your work. Platforms like Stack Overflow also help find solutions to coding problems and learn from experienced developers.
With dedication and consistent practice, these resources will help you build a strong foundation in programming. Start with what interests you most: web development, data science, or app development, and explore new projects to keep learning. By gaining practical skills, connecting with coding communities, and working on projects that challenge you, you’ll be well-prepared for a future career in programming. Keep going—you’ve got this!
For a more structured learning experience, Coursera and edX provide programming courses from professors like Stanford and MIT. These platforms offer both beginner and advanced courses in computer science fundamentals, which can help you understand the “why” behind programming concepts. Many courses on Coursera and edX also offer certificates, which you can add to your resume as you build skills.
If you prefer a more project-based approach, FreeCodeCamp is a fantastic option that teaches coding through real-world projects and provides a clear learning path in web development, JavaScript, data analysis, and more. The curriculum is comprehensive, and by the time you finish, you’ll have a portfolio of projects demonstrating your skills. Kaggle is another excellent resource, especially if you want to use Python for data science. Kaggle offers beginner-friendly exercises and real-world datasets, making it an ideal choice if you’re interested in data-driven programming.
To enhance your problem-solving abilities, websites like HackerRank and LeetCode offer coding challenges that allow you to practice and apply what you’re learning fun and competitively. Programmers of all skill levels widely use these platforms, and they are also great for preparing for technical interviews in the future.
As you progress, consider joining coding communities like GitHub, where you can collaborate on open-source projects. Working with others on real projects will give you valuable hands-on experience, and GitHub is a great way to showcase your work. Platforms like Stack Overflow also help find solutions to coding problems and learn from experienced developers.
With dedication and consistent practice, these resources will help you build a strong foundation in programming. Start with what interests you most: web development, data science, or app development, and explore new projects to keep learning. By gaining practical skills, connecting with coding communities, and working on projects that challenge you, you’ll be well-prepared for a future career in programming. Keep going—you’ve got this!
Updated
Rosalind’s Answer
Lot's of good answers already, in addition while in High School look for a FIRST (For Inspiration and Recognition of Science and Technology) https://www.firstinspires.org specifically a FTC team. There is a significant amount of software development required and you can work with others to learn as well.
The other choice is to take a look at https://www.ibm.com/z/resources/zxplore which provides another view of development for large enterprise organizations.
The last additional reference I would suggest if you really want to understand languages would recommend the book "Seven Languages in Seven Weeks" by Bruce Tate after you get the basics of any language.
The key to being a software developer is the willingness to learn various languages. The other suggestion I would make is to learn git and use visual studio code to do your development. It gives you a lot of help learning languages helping with syntax.
The last area I would suggest is look for an open source project you are interested in working on, and get involved. Developing your skills working with open source projects get's you a portfolio visible to any future employer.
The other choice is to take a look at https://www.ibm.com/z/resources/zxplore which provides another view of development for large enterprise organizations.
The last additional reference I would suggest if you really want to understand languages would recommend the book "Seven Languages in Seven Weeks" by Bruce Tate after you get the basics of any language.
The key to being a software developer is the willingness to learn various languages. The other suggestion I would make is to learn git and use visual studio code to do your development. It gives you a lot of help learning languages helping with syntax.
The last area I would suggest is look for an open source project you are interested in working on, and get involved. Developing your skills working with open source projects get's you a portfolio visible to any future employer.
Updated
Elliot’s Answer
Hi Devan,
Just a simpler answer to the other one - get a good book on Python or Javascript and work through it. Python is a great skill to get deeper in. Build some small Projects. YouTube has a lot of great videos. LinkedIn Learning (get it free with your Library card!), and FreeCodeCamp are all good.
For web development, I highly recommend w3schools.com! These are all good starting points. Good luck!!
Just a simpler answer to the other one - get a good book on Python or Javascript and work through it. Python is a great skill to get deeper in. Build some small Projects. YouTube has a lot of great videos. LinkedIn Learning (get it free with your Library card!), and FreeCodeCamp are all good.
For web development, I highly recommend w3schools.com! These are all good starting points. Good luck!!
Updated
Gustensen’s Answer
Where to Learn:
Online Courses: Websites like Codecademy, freeCodeCamp, and edX offer free courses.
YouTube: Many channels have free tutorials.
Books: "Automate the Boring Stuff with Python" is a great beginner book.
Tips:
Start with a goal: What do you want to build?
Practice regularly: The more you code, the better you'll get.
Don't be afraid to ask for help: Join online communities.
Have fun! Experiment and enjoy the process.
Need more help? Let me know what you're interested in building, and I can suggest specific resources.
Online Courses: Websites like Codecademy, freeCodeCamp, and edX offer free courses.
YouTube: Many channels have free tutorials.
Books: "Automate the Boring Stuff with Python" is a great beginner book.
Tips:
Start with a goal: What do you want to build?
Practice regularly: The more you code, the better you'll get.
Don't be afraid to ask for help: Join online communities.
Have fun! Experiment and enjoy the process.
Need more help? Let me know what you're interested in building, and I can suggest specific resources.