CREATE Lab Visual Programmer is an excellent starting environment for the novice programmer. We recommend it as the starting point for younger kids, especially those with no prior experience programming. (Hummingbird only)
Snap! Jr. is a tile-based visual programming language and does not require high reading comprehension. (Finch only)
Snap! is a tile-based visual programming language, which is excellent for novice and intermediate programmers.
Scratch is a tile-based visual programming language, which is excellent for novice and intermediate programmers.
BirdBlox is a block-based programming app that is compatible with iOS, Android, and Kindle Fire devices. It is based on Scratch and Snap! and is appropriate for novice programmers. (Hummingbird only; Bluetooth adapter required for Duo)
MakeCode is a block-based programming environment that can directly download to a micro:bit controller, ideal for untethered robots. (Hummingbird only; micro:bit and USB dongle required for Bit; micro:bit and micro:bit adapter required for Duo)
Arduino is a text-based language used for untethered robots. Ardublock functions as a bridge between block- and text-based programming. (Hummingbird only)
Python is a text-based programming language and is great for intermediate programmers.
Java is an advanced text-based programming language that is one of the most-used languages in the software industry today.