• If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!


Learn to Program

Page history last edited by Mr. Howard 5 years, 2 months ago

There are a lot of great options for learning of program computers. Some a visual (drag and drop blocks) and some involve writing code (written instructions). Visual is easy to learn. Code is more powerful. Start with visual then move on to coding. In the Video Game Design class, we learn how to apply programming to developing games.

> Look for BEST STARTING POINT for the best place to start in each section

> See the Video Game Design page or the List of Game Builders for other options specific to developing games.


 Quick Page Links:


Visual Programming

  • BEST STARTING POINT: Scratch - Scratch is a programming language that makes it easy to create your own interactive stories, animations, games, music, and art -- and share your creations on the web. You can start with the Scratch page from our Video Game design class or try one of the resources below:
    • Learn Scratch - Unit 1 (8 lessons) - This introductory course will allow you to quickly and easily learn how to use some of the capabilities of Scratch. You will learn how to move Sprites (people, animals, objects, etc.) in your programs, how to add sounds, how to change colors, control actions with the mouse or the keyboard, how to design your own Sprites, etc.
    • Learn Scratch - Unit 2 (24 lessons) - This course is organized into 24 Lessons corresponding to 5 Units. The Lessons introduce systematically each of the almost one hundred building blocks which together form the graphic programming language Scratch.
    • Learn Scratch - Unit 3 (32 lessons) - In this course you will find video tutorials describing the implementation of Scratch projects. It includes 32 Lessons grouped into 7 Units. Each Unit corresponds to a thematic group:  Animation, Drawing, Games, Interactive Art, Math, Music and Simulation. These lessons describe the structure and operation of projects submitted by programmers to the Scratch official site.
    • Other Tutorials:
  • Alice - Explore basic computer programming
  • Google App Inventor - Using MIT App Inventor, you can develop applications for Android devices (phones/tablets) using a web browser and a connected phone (or emulator). You can start with the App Inventor page from our Video Game design class or try one of the resources below:
  • TouchDevelop - TouchDevelop lets you create apps on iPad, iPhone, Android, PC, Mac, Windows Phone. Their touch-friendly editor makes coding fun, even on your phone or tablet!
  • AppArchitect - Web-based IOS App builder that (for now) allows to you publish your apps on the AppStore for free. No coding is required.
  • HappyNerds - This site has tons of options for learning programming - both visual and code



  • BEST STARTING POINT: CodeAcademy - Codecademy is the easiest way to learn how to code. It's interactive, fun, and you can share your progress with your friends. They have courses in tons of subjects + projects to apply your knowledge.
  • BEST FULL OPTION: https://learn.freecodecamp.org/ - Thousands of coding lessons to help you improve your skills. Learn HTML, CSS, Javascript, and much, much more. You can earn each certification by completing its 5 final projects. And yes - all of this is 100% free, thanks to the thousands of campers who donate to our nonprofit. 
  • Code Avengers - Learn to code the fun way. Learn Javascript and/or HTML.
  • CodeCombat - Combat the monsters with code (and learn Javascript at the same time)
  • Dash - Learn to make awesome websites. Dash teaches HTML, CSS, and Javascript through fun projects you can do in your browser.
  • Khan Academy - Lots of good computer science tutorials
  • Try Ruby - Ruby is a programming language from Japan (available at ruby-lang.org) which is revolutionizing the web. The beauty of Ruby is found in its balance between simplicity and power.
  • Learn To Code: The Full Beginner’s Guide -  Lifehacker website's 4.5 lessons introducing coding
  • RubyMonk - Pick up Ruby the Monk way :) RubyMonk is an interactive learning platform. Learn Ruby with lessons, solve problems or view the contents.
  • Hackety - Hackety Hack will teach you the absolute basics of programming from the ground up. No previous programming experience is needed! With Hackety Hack, you'll learn the Ruby programming language. Ruby is used for all kinds of programs, including desktop applications and websites. 
  • Code Maven -  Code Maven from Crunchzilla is live Javascript programming for fun. The focus is on action. Code changes immediately yield visible results.
  • Game Maven - Once you have completed, Code Maven (above), learn to build some basic Javascript games! 
  • HappyNerds - This site has tons of options for learning programming - both visual and code
  • MakeIOSGamesWithUs -  Really nice set of interactive xcode lessons that teaches you everything you need to know to build several popular iOS game clones (like Angry Birds etc) Note: You will need access to a Mac to go through these.
  • Robocode - Robocode is a programming game, where the goal is to develop a robot battle tank to battle against other tanks in Java or .NET. The robot battles are running in real-time and on-screen.


Camps in Austin

What about a local technology camp? There are tons that are designed specifically for middle schoolers! See our Austin Tech Camps page for a list.


Online Coding Classes

What about an online class? There are tons and many are free! See our Online Tech Class page for a list.


Downloadable/Online Books on Programming



Now that you know some coding basics, what's next?
I'd recommend finding some existing code and figuring out how it works. Then try and change it to see what happens. To do that, you'll need somewhere to write your code and run it. This is called an IDE (Integrated Development Environments). There are IDEs that you can download, but the easiest thing to do is to use a web-based one. You don't have to install anything. See below for a couple web-based IDEs plus sites to find code to mess with.


Web-Based IDEs (Integrated Development Environments)

All are free!

  • BEST STARTING POINT: JS Bin - Easy way to play with Javascript and/or HTML. Saving is a bit weird, so ask Mr. Howard for help.
  • BEST STARTING POINT: Plunker - Great place to play around with Javascript and HTML after finishing CodeAcademy. Little more complicated than JS Bin, but more powerful.
  • Cloud9 IDE 


Javascipt Sample Sites

To play with Javascript, you need an IDE (see below) and an HTML file to run the code. The HTML file holds the code and allows you to run it. Most of these sites will assume you have a blank HTML file (created in your IDE - usually with a "new from template" type command). Then you will copy some code into the <HEAD> section of the HTML file and copy some copy into the <BODY> section of the HTML file. These websites will give you the code and tell you where to put it.


Full (downloadable) IDEs with Learning Environments



Comments (0)

You don't have permission to comment on this page.