The amount of interest in learning to code from previously non-technical has been extraordinary. Last December, even the President of the United States took some time to learn a bit of Javascript.

While learning programming can be a daunting task,  it’s important to keep in mind that every expert developer starts as a novice.   To learn,  everyone must write that first line of code,  no matter how perplexing it may seem at the time. In the same way one learns to write by practicing over and over again, the best way to learn code is by coding over and over again. (The big difference now is that instead of a red pen from a stern teacher– you’ll have to deal with bugs or compiler errors when your code grammar isn’t the best it could be.)

The bottom line is that learning to code is like learning anything– you need to know the basics and then practice, practice, practice. Learning to code is simple but it’s not easy. Like any skill worth practicing, it will take quite a bit of work. Luckily though, unlike some other disciplines, the people who know how to code usually tend not to hoard their knowledge. They love building tools and sharing what they know! There is now a plethora of resources available to those who are motivated to learn.

If you have zero coding experience, check out computerscience.org and see the section titled Resources for Coding Basics (excerpted below):

  • Alice.org offers a 3D programming environment to help kids across all ages learn about object-oriented programming. Downloads, licensing and tutorials are available.
  • Codecademy.com offers anyone the opportunity to learn how to code for free using simple examples and methods.
  • Codepupil.com uses simple games, like its “Code Stitch”, and exercises to teach kids to code with HTML and CSS.
  • Code.org teaches the basics in computer science through a tutorial that uses drag-and-drop programming. A K-8 Intro to Computer Science course 15 to 25 hours long is available to kids as young as age six.
  • ComputerScienceForKids.com offers four different language-programming tracks for home-schooled students as well as curriculum for teachers that can be used in the public classroom.
  • DaisyTheDinosaur is an iPad app that introduces kids ages five to eight basic logic and allows them to drag one-word commands into the programming space.
  • Hackety.com teaches students the basics of the Ruby programming language, which is used for applications and websites. Online courses include An Introduction to Ruby and An Introduction to Programming.
  • Kodable is an iPad game to teach children as young as age five how to develop coding skills. Learning tools are also available for students as advanced as the 12th grade.
  • PluralSight knows that kids are already experts in technology and offers free courses such as Teaching Kids to Program and Learning to Build Apps with App Inventor.
  • Scratch.MIT.edu offers a visual programming language developed by the MIT Media Lab, allowing kids to build interactive animations, games and stories. More than 4.9 million projects have already been shared on the site.
  • TeachKidstoProgram.com provides suggestions for websites, software, hardware and books, such as “Python for Kids” by Jason Briggs, to use to develop children’s interest in programming.
  • TeamTreeHouse.com provides the chance to learn about web coding and design through more than 1,000 videos created by expert instructors. Knowledge is tested through interactive coding challenges and quizzes.
  • Udemy.com provides a number of courses for children including a fairly inexpensive Kids Coding-Beginner HTML that is tailored toward young learning styles and includes a final project.

See computerscienceonline.org for more details