CodeMontana is designed to get you started in programming using online curriculum at CodeHS.com. Once you complete the CodeHS Introduction to Computer Science online curriculum, you may be interested in taking their Advanced Placement (AP) Computer Science in Java course or their Introduction to SQL (there is a subscription fee for both of these).
Here are some other FREE resources on the web that can also help you go farther:
Alice.org – Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web.
Beginners’ Resources to Learn Programming Languages – A collection of links to various online resources geared towards learning how to program (thanks Alex J. for the suggestion!).
Code.org – Learn the basic concepts of Computer Science with drag and drop programming.
CodeAcademy.Com – Learn a specific programming language like Java, PHP or Python.
KhanAcademy.org – Courseware that teaches about programming.
Looney Challenges — Encouraging Montana students to continue to learn and improve their computing skills.
Montana Tech CodeMontana Scholarship – Complete the first four CodeMontana Introduction to Computer Science modules and have at least a 24 on your Math ACT and you are eligible for a $4,000 scholarship to attend Montana Tech to study Computer Science or Software Engineering.
Montana Tech REAL Scholarship – Complete these on-line modules and earn up to $1,200 in tuition towards at Montana Tech where you can earn a degree in computer science or software engineering.
If you’re looking for some Python activities/curriculum that you can run in the web, check out Learning Python for Hour of Code and Beyond. Also includes links to many other resources for including coding in your classroom.
Three resources for teaching Python in the classroom:
(Thanks to Eric Swenson, OPI, for the above suggestions. Eric sends out an excellent weekly newsletter via email called the Weekly Reader that includes a lot of technology resources for the classroom. Email him at eswenson at mt.gov to subscribe.)
PluralSight – Online curriculum to help professional software development people help their kids to learn how to program.
Scratch – Scratch is a free programming language and online community where you can create your own interactive stories, games, and animations.
UVa Online Judge – Here you will find hundreds of problems. They are like the ones used during programming contests, and are available in HTML and PDF formats. You can submit your sources in a variety of languages, trying to solve any of the problems available in the database.