Coding
At D39C we engage all students in learning the language and thinking processes involved with computing. Deep thinking happens when students problem solve on projects that are open ended and under their control. Logical thinking, creativity, and mathematical understanding are all fostered in an environment where students have to think about their own thinking and help others think through their problems.
Check out code.org for lots of resources to help your child/student learn how to code!
Teach Preschoolers to Code
DAISY
Suggested age range: 5-8
Language: Basic logic
Platform: iPad
This program is for the youngest audience. Created by the makers of Hopscotch, this iPad app teaches the basics of programming logic in a way even kindergartners can understand. Kids can use ultra-basic blocks in order to animate Daisy the Dinosaur. Just drag one-word commands like “roll,” “jump,” and “grow,” into the programming space, and press play. Players can see a direct relationship between the commands they assign and the actions Daisy takes.
Kodable
Suggested age range: 5 and up
Language: Basic logic
Platform: iTunes Application
Kodable is a free educational iPad game offering a kid-friendly introduction to programming concepts and problem solving. For kids ages 5 and up, and tools for grownups too! Kodable gives kids the skills needed to learn any programming language later in life, and adults the tools to help them.
Scratch Jr.
Suggested age range: 5-8
Language: Basic logic
Platform: Web
ScratchJr is an upcoming project being designed at Tufts University, with grants from the National Science Foundation, to allow young kids to easily learn to program with a system based on Scratch. The goal of ScratchJr is to "develop and study the next generation of innovative technologies and curricular materials to support integrated STEM learning in early childhood education."[1] ScratchJr is still under development in a prototype stage and is planned on being completed for public release in 2014.
Blockly
Suggested age range: 5-8
Language: Basic logic
Platform: Web
Blockly is a web-based, graphical programming editor made by Google. Users can drag blocks together to build an application. No typing required.
Snap
Suggested age range: 5-8
Language: Basic logic
Platform: Web
Snap is a visual, drag-and-drop programming language. It is an extended reimplementation of Scratch (a project of the Lifelong Kindergarten Group at the MIT Media Lab) that allows you to Build Your Own Blocks. It also features first class lists, first class procedures, and continuations. These added capabilities make it suitable for a serious introduction to computer science for high school or college students. SNAP! runs in your browser. It is implemented using Javascript, which is designed to limit the ability of browser-based software to affect your computer, so it's safe to run even other people's projects, even if you don't trust our competence or good intentions.
CARGO-BOT
Platform: iPad
Cost: Free!
Cargo-Bot is another game that teaches coding skills. On each level, the objective is to move colored crates from one place to another by programming a claw crane to move left or right, and drop or pick up. The game was actually programmed on an iPad, using a touch-based coding app called Codea, which is based on the programming language Lua. Elementary students will learn the logical thinking required to eventually do "real" text-based programming using Lua -- but Lua is not for young learners. For elementary students, stick with Cargo-Bot.
GAMESTAR MECHANIC
Platform: Web
Cost: $2 per student
GameStar Mechanic teaches kids, ages 7-14, to design their own video games. Kids complete different self-paced quests while learning to build game levels. The site integrates critical thinking and problem-solving tasks. An app embedded within Edmodo makes logins easy for students.
HOPSCOTCH
Platform: iPad
Cost: Free!
Hopscotch looks a lot like Scratch and Tynker and uses similar controls to drag blocks into a workspace, but it only runs on the iPad. The controls and characters are not as extensive as Scratch and Tynker, but Hopscotch is a great tool to begin helping students without coding experience learn the basics of programming, logical thinking and problem solving.
MOVE THE TURTLE
Platform: iOS (iPad and iPod)
Cost: $2.99
We love Move the Turtle, a gamified way to learn programming procedures. The main character reminds us of the old Logo turtle used to teach kids computer programming during the reign of the Apple IIe. Each new level of achievement increases in difficulty and teaches a new command that directs the turtle to reach a star, make a sound, draw a line, etc. A free play "compose" mode lets students move the turtle however they want.
SCRATCH
Suggested age range: 8 and older
Language: Original visual programming language
Platform: Browser-based
The visual language and interface was created at MIT Media Labs to get kids coding early, even if they can’t yet understand the complicated syntax that makes up written computer languages. In order to use it, kids just drag and drop sprites and blocks of code. The results look something like early Flash projects.
ALICE
Suggested age range: 8 and older
Language: Original object-oriented 3D programming language
Platform: Windows, Mac, or Linux download
Alice was originally designed by researchers at the University of Virginia as a gentle introduction to object-oriented programming. It was moved to Carnegie Mellon University by Dr Randy Paush of "The Last Lecture" and it became a tool for teaching introductory programming. Its namesake, the Lewis Carroll heroine, stresses the researchers’ emphasis on making coding appealing to young girls. In Alice, draggable blocks of text instantly affect 3D sprites in a virtual world. Kids can test programs while that they create them, watching the sprites change in real time as they manipulate the block statements.
SQUEAKLAND: ETOYS
Suggested age range: 8 and older
Language: Visual programming language
Platform: Browser-based (Not Explorer)
Etoys is an educational tool for teaching children powerful ideas in compelling ways in media-rich authoring environment and visual programming system. Squeak is the language that is also used to build Scratch.
KODU
Suggested age range: 8 and older
Language: Visual programming
Platform: PC, X-Box
Kodu lets kids create games on the PC and XBox via a simple visual programming language. Kodu can be used to teach creativity, problem solving, storytelling, as well as programming. Anyone can use Kodu to make a game, young children as well as adults with no design or programming skills.
If you join the community you will discover games created by others and share your game at KoduGameLab.com.
Kodu for the PC is available to download for free. Kodu for the XBox is also available in the USA on the XBox Marketplace, in the Indie Games channel for about $5.
TYNKER
Suggested age range: 9 to 14
Language: JavaScript
Platform: Browser-based
$50 per student
Tynker is a new computing platform designed specifically to teach children programming skills and computational thinking in a fun and imaginative way. Tynker is a new computing platform designed specifically to teach children computational learning and programming skills in a fun and imaginative way. Tynker is inspired by Scratch from MIT. It is a completely browser-based platform written using Open Web standards such as Javascript, HTML5, CSS3 and does not use Flash.
Self-guided learning system. Everything your child needs to complete course assignments and build more projects.
Media gallery. Over 4,000 sounds, animations, images, and scenes.
Game design tools. Including a vector drawing tool, physics engine, and character studio.
Badges and Course Certificate
Badges at the end of each chapter. Students take quizzes and solve puzzles to assess their knowledge of the concepts covered in each chapter.
Course completion certification. Awarded to the student upon completion of a final exam.
Parent Dashboard
Learning dashboard. Track your child's progress and see what they're learning.
CODE MONSTER
Suggested age range: 9 to 14
Language: JavaScript
Platform: Browser-based
Code Monster takes away the complexities of writing JavaScript and leaves just that. It was created by Greg Linden, who wanted to teach his own kids how to code.
This split screen tutorial places JavaScript on the left of the screen and images on the right. When kids alter the variables on the script side, the images transform instantly in response. Under the instruction of a friendly monster sprite, each new lesson brings new colors and shapes to the right side of the screen. Plus, the editor remembers your progress, directing you to the last lesson you completed each time you reopen the program.
Lego Digital Designer
Suggested age range: 9 to 14
Language: JavaScript
Platform: Windows/MacOS Download
LEGO Digital Designer, or LDD, is a free computer program produced by the LEGO Group as a part of Lego Design byME. It is available forMac and Windows platforms. The program allows users to build models using virtual LEGO bricks, in a computer-aided design like manner. Until January 16, 2012, these could be uploaded, along with instructions and a box design, to the LEGO Design byME website, from where the models could be ordered for delivery as a real, packaged set. Users could also take "screenshots" of their models and store the models on their computer in an .LXF file.
Language: Ruby
Platform: Mac download
Recommended as an ideal introduction for teens. With cute graphics and simple explanations, teens can learn Ruby even if they’ve never touched another programming language before. The interface is divided into two screens, an “editor” for inputting commands and testing programs, and a lesson that clarifies the code in plain English. After the tutorial, users create and share basic games and programs.
Suggested age range: 12 and older
HACKETY HACK
Khan Academy
Age range: 12 and up
Language: Beginning programming syntax
Platform: Browser-based
Learn the fundamentals of programming on the Khan Academy Computer Science platform. Explore programs made by others. Write your own programs and share them!
CODEACADEMY
Age range: 12 and up
Language: Beginning programming syntax
Platform: Browser-based.
Codecademy has been touted as the tutorial to teach anyone to code. It lacks the cartoony sprites and colorful interface of any of the other kid-targeted tutors on the list, but it’s still friendly and simple to grasp. Through Codecademy, kids as young as 12 can get started in Python, Ruby, PHP, HTML, or JavaScript, even APIs. The tutorial is also trying to expand its appeal to young beginning programmers with its After-School Programming effort, encouraging students and educators to start a programing club at their schools.
Research links for more advanced coding solutions
http://www.jeremymorgan.com/blog/programming/how-to-start-programming-for-free/
http://www.computerscienceforeveryone.com/ (Classes with live video chat!)
http://www.extension.harvard.edu/open-learning-initiative/intensive-introduction-computer-science
http://dailytekk.com/2012/01/29/6-easy-ways-to-learn-coding-and-computer-science-for-free/