Free Educational Programming Languages
Free programming languages to teach kids programming
Free Educational Programming Languages / Free Children's Programming Languages
The programming languages listed here are designed for educators to teach children how to write computer program. Like the Logo programming language, they are typically graphics-based so as to make the language attractive and relevant to kids. They are designed to teach children basic programming concepts and have some of the basic elements required in traditional programming so as to provide a means for kids to learn and become interested in programming.
If you are an educator, and are evaluating programming languages for your students (or even your own children for that matter), you may also want to consider the commercial Lego Mindstorms NXT sets which are used by many schools to introduce children to programming and robotics. The children have to build a robot using Lego blocks and use the PC to program the robot to do various tasks (which you can set) using a visual programming language. Traditional programming languages like Java and C are also available for this robotics set. See the Free Lego Mindstorms NXT Compilers and Programming Languages page for details.
Related Pages
- How to Create / Make a Website: The Beginner's A-Z Guide - display your work on the web
- Free BASIC Compilers and Interpreters
- Free Pascal Compilers, Free Delphi Compilers
- Free Java Compilers, Assemblers, Java Development Kits
- Free Prolog Compilers and Interpreters
- Free Common LISP Compilers and Interpreters
- Free Esoteric, Obfuscated, Unusual and Weird Programming Languages
- Free Installers and Setup Utilities
- Free Antivirus Software and Free Online Virus Scans
- How to Register Your Own Domain Name
- Can I Create Multiple Websites with One Domain Name?
Disclaimer
The information provided on this page comes without any warranty whatsoever. Use it at your own risk. Just because a program, book, document or service is listed here or has a good review does not mean that I endorse or approve of the program or of any of its contents. All the other standard disclaimers also apply.
Free Educational Programming Languages - Teach Kids Programming
- Kodu

Kodu is a visual programming language from Microsoft Research for Windows and XBox. The intention is that kids, even young children, can use it to create games. The Kodu site shows screenshots of a 3D racing game, a 3D adventure (or "storytelling") game, and a 2D side-scrolling game (such as what you may create if you're designing a platform game). If you use an XBox, you can create games using only the XBox game controller. PC users can of course use a mouse and keyboard. At the time I write this, it looks like you will need to install the Microsoft XNA Framework 3.1 redistributable (a set of software run-time libraries for developing games) as well. Incidentally, I suggest you read what the Kodu site says are the system requirements before you blindly download and install the XNA 3.1 redistributable from my link. For all you know, a newer version of Kodu than the one I saw when I wrote this may require you to install XNA 4.0 or later instead of 3.1. If so, I'll appreciate if you will let me know so that I can update this description. Note: you should also be aware that this project comes from the research arm of Microsoft. Research projects (of any company) will not last forever; they may be discontinued eventually or perhaps even "upgraded" to become a commercial product. In other words, if you're planning to use Kodu in the near future, you may want to download all the resources for it (including the lesson plans) now, while it's still available.
- Greenfoot
Greenfoot can be regarded as a subset of the Java programming language bundled with a special integrated development environment (IDE), designed specifically to teach children (or more likely teenagers and older) programming. Your learners can create scenarios or worlds that use various sorts of creatures (wombat, crab, etc), sound, etc, as the basis for learning Java.
- Processing
Processing is a programming language specializing in the creation of images and animations. It comes with an integrated development environment (IDE) and allows you to write interactive programs that can generate 2D, 3D and even PDF output. Graphical output is not the only thing supported though; your program can handle I/O, that is, input and output, through the mouse, keyboard, files, etc. The language is built on top of Java, but does not require knowledge of Java. (It actually translates your Processing code into Java.) Supported platforms include Windows, Mac OS X and Linux. Processing (ie, both the IDE and libraries) is open source.
- GameKit
GameKit is a high level, object-oriented, imperative language, with branching constructs, designed specifically for programming games. In this language, "the world is a series of state bits and every action changes them" (from the website). It has a syntax somewhat similar to the Java/C/C++ family. There is no way to bind arbirtrary variables. The author says that the language is "really just Scheme disguised by a different syntax". GameKit comes with an editor, a debugger, resource editors, and was created to teach a variety of computer concepts like artificial intelligence (AI), user interfaces (UI), event driven programming, object oriented programming, game programming, and computer graphics. Note that this language is more advanced than most of the other items listed on this page, and is not visually oriented (picture-based). As such, it's probably only suitable for older students (eg, at least in the teens).
- Alice.org - A New Way to Teach Programming
Alice is a 3D programming environment that allows kids to create animated movies and simple video games. It uses 3D graphics and features a drag and drop interface. In this language, 3D objects like people, animals and vehicles populate a virtual world and the programmer creates a program to animate the objects. Alice programs include objects, methods, recursion and other features found in traditional programming languages like C++, C# and Java. Platforms supported include Windows, Mac OS X and Linux.
- Scratch
Scratch is a programming language for kids ages 8 and up. It is a visual language that makes it easy for you to create animations, games, interactive stories, music and art. It has a built-in IDE which produces interpreted code. The code can be run on either Windows, Mac OS X or Linux using the interpreter, or alternatively, be placed on a website as an embedded object. At this time, you can either upload your application to the Scratch website or place it on your own website with the help of a Java applet that serves as the interpreter. If you are looking for a programming language to teach your kids, this looks like a fun one that kids can easily take to.
- Kid's Programming Language (Defunct)
(Note: KPL is now defunct and is no longer available.) Kid's Programming Language (or KPL), as its name implies, is a programming language that is designed to get kids interested in computer programming. This educational program features many of the control structures, data types (including structures) and constructs from the traditional programming language. It works on top of the Microsoft .NET Framework, and is available for Windows only.
Related Pages
- Free Game Programming Libraries and Source Code
- Free DVD Authoring and Creation Software
- How to Create a Website with Dreamweaver CS4 (Dreamweaver Tutorial)
- Which Web Host Do You Recommend? (FAQ)
- How to Make Money From Your Website
- How to Start / Setup Your Own Blog Using the free WordPress software
- Free Drawing and Painting Software, Image and Photo Editing Programs
- Free Video Editors (Video Editing Software)
Can't Find What You're Looking For?
Search the site using Google.
Newest Pages
- How to Add a Contact Form (Web Form) to Your Website Using Dreamweaver CS5.5
- How to Efficiently Manage a Multi-Page Website with Dreamweaver CS5.5
- How to Reserve a Domain Name. Do You Need a Web Host if You Want to Reserve a Domain for Future Use?
- How to Customize the Navigation Menu on Your Website with Dreamweaver CS5.5
- What's the Difference Between a Content Management System (CMS), a Blog, a Web Editor and an Online Site Builder?
- Free Image/Photo Slide Show JavaScript
- Free GUI Builders, Application Builders and Rapid Application Development (RAD) Software
- HTML Tutorial - Learn to Design a Website using HTML
- How to Centre a Background Image or Photo on Your Web Page Using KompoZer
- How to Create Rounded Corners for Your Box Borders in CSS
- How to Set Up a Standard User Account (or Limited Account) on Windows Vista and Windows 7 for Daily Use
Popular Pages
- How to Create/Make Your Own Website: The Beginner's A-Z Guide
- How to Register Your Own Domain Name - how to get your own domain name
- Dreamweaver CS5.5 Tutorial: How to Design a Website with Dreamweaver CS 5.5
- How to Create a Bootable Windows XP Setup CD/DVD on a Preinstalled Windows System
- Free Partitioning Software - Copy, Create, Move, Resize, Convert, Undelete Partitions
- Free Data Recovery, File and Partition Recovery, Undelete and Unformat Software
- How to Create an Emergency Windows Rescue CD
- Free DVD Authoring and Creation Software
- Free CD and DVD Burners and Copying Software
- Free Hard Disk Backup and Restore, Hard Disk Image and Cloning Utilities
How to Link to This Page
It will appear on your page as:
Free Educational Programming Languages - Teach Kids Programming
