Resources: Programming Languages

Logo, Scratch, other block-based languages, Python, Processing, Minecraft & programmable worlds, app and game makers. See also Teaching Programming.

  • MicroWorlds Jr. and MicroWorlds EX – Modern versions of the Logo programming language, with full multimedia capabilities.
  • StarLogo TNG – StarLogoTNG (The Next Generation) is a downloadable programming environment that lets students and teachers create 3D games and simulations of complex systems.
  • StarLogo Nova – StarLogo Nova builds on StarLogo TNG and brings it to the browser.
  • NetLogo – NetLogo focuses on mathematical explorations and scientific simulations that may be run on computers across the globe.
  • Scratch – Free block-based programming language for simple storytelling and games. Works in a browser or offline. Materials and videos for educators and classrooms.
  • Scratch Jr. – A free version of Scratch for early learners (age 5-7) that runs on tablets and Chromebooks.
  • ScratchED web site – An online community and resources for educators who teach with Scratch.
  • LEGO WeDo programming in Scratch – Scratch also may be used to program LEGO’s early childhood robotics set called WeDo. Plug the LEGO WeDo 2.0 into your computer and new blocks appear for robotics control in Scratch.
  • Cognimates Platform for AI education – Explore Artificial Intelligence (AI) by programming in Scratch and controlling robots.
Scratch books
Other block-based languages
  • Snap! – Scratch with first-class objects added to make more complex programming projects possible.
  • Learn CS Concepts with Snap! – Learn to create games and animations in Snap! by Abhay B. Joshi.
  • Turtle Art – A simple yet elegant variation of Logo with an iconic interface intended to create beautiful images.
  • Turtle Blocks – A variation of Turtle Art developed for the One Laptop Per Child (OLPC) project that runs on Chromebooks.
  • Blockly – A free visual block programming language project of Google. It runs in most browsers and a subset of it runs on Android and iOS. It can also convert code to a variety of text-based languages, including JavaScript and Python.
  • Tickle – An iOS block-based programming environment with a lot of Scratch functionality that can control many popular Bluetooth robotics toys and drones. The basic app is free, but you need to pay a few dollars to add functionality for some devices.
  • Droneblocks – A free block-based programming environment for iOS, Android, and Chrome that allows users to program a variety of popular DJI drones from toys to prosumer models.
  • TaleBlazer – A free block-based programming language for creating location-based augmented reality games.
  • GP – GP is a free, “general purpose” block-based programming language that runs on most computers and web browsers. GP draws on ideas from Scratch, Squeak, and Snap! and can be used for simulations, media manipulation, cloud-computing, and teaching computer science.
  • Guide to Block-based Programming – Online guide to choosing the best block-based programming language for your classroom.
App and game makers
  • MIT App Inventor – Create apps and games for Android devices with this visual programming environment. Code samples, tutorials, and extensive educator resources are on the MIT website.
  • Game Maker Studio – A commercial product used in many schools (mostly high schools) to teach programming through game design. It does have a free trial version that is usable, although the full versions are very reasonable. The website offers tutorials, sample games, and support.
  • Game Salad Creator – Drag and drop game creation tool
  • Gamestar Mechanic – A commercial product designed to teach programming through game development. It offers education pricing, lessons, tutorials, and an educator community.
  • Kodu – Visual programming tool made for creating PC or Xbox games. Supported by Microsoft.
Other languages and programmable worlds
  • Wolfram Language – Comprehensive programming language with built-in computational intelligence.
  • Minecraft – 3D building sandbox popular with children worldwide.
  • Swift Playgrounds – An iPad-based programming environment capable of creating iOS apps, programming the LEGO EV3 robotics system, and other devices.
  • Squeak – Squeak is the vehicle for a wide range of projects including multimedia applications, educational platforms, and commercial web application development. Scratch itself was created in Squeak.
  • Small BASIC – Microsoft-supported free BASIC and tutorials. (Windows)
    LiveCode – A “HyperCard on steroids” cross platform development engine. There is a limited free version.
    AgentSheets & AgentCubes – AgentSheets is part of the Scalable Game Design project to teach young people around the world about computer science and science. AgentCubes is a 3D version and is available in a browser.
>> Back to All Resources List