For anyone getting started with LEGO MINDSTORMS, the EV3 Software provides a great introduction to programming, but sooner or later you and your students might be ready for something different. For example, one option is to use a text-based programming language, such as RobotC, that better reflects the dominant style of programming in the computer industry.
Whether you’re looking for a way to extend your students, or to provide a link with another programming language, here is a list of some of the most popular third-party alternatives.
LabVIEW (EV3, NXT)
LabVIEW for LEGO MINDSTORMS (LVLM) and LabVIEW for Education (LV4E) are visual programming environments. The EV3 Software was built in LabVIEW, so LVLM provides a great next step for students who are familiar with that programming language and ready for something more powerful and versatile. Browse all LabVIEW posts on this site.
RobotC (EV3, NXT, RCX)
RobotC is a C-based programming language with a fully integrated software debugger that supports a range of different hardware platforms. Extensive documentation and online support is available. For more information, visit: http://www.robotc.net/.
Ev3dev isn’t actually a programming language, but rather a Debian Linux-based operating system that can run almost all languages that any other linux distribution can run, including C++, Node.js, and Python. For more information, see: http://www.ev3dev.org/.
leJOS (EV3, NXT, RCX)
LeJOS (pronounced like the Spanish word “lejos” for “far”) is a tiny Java Virtual Machine that supports Java. For more information, see: http://www.lejos.org/ev3.php.
OpenRoberta (EV3, NXT)
Open Roberta is a free, drag and drop, cloud-based platform for programming LEGO EV3 and NXT robots. For more information, see: Open Roberta: A Review.
EV3 Basic (EV3)
EV3 Basic is a textual programming language. For more information, see: Introducing EV3 Basic.
Scratch (EV3, NXT)
Scratch is a very popular visually programming environment. Several extensions have been created to support the NXT or EV3. For more information about Scratch, see: https://scratch.mit.edu/ Scratch can also be used with LEGO WeDo (see Scratch-ing the LEGO WeDo) and WeDo 2.0. For more about using Scratch with WeDo, see: https://scratch.mit.edu/wedo.
Enchanting is a programming environment for the NXT that is built on Scratch. For more information, see: http://enchanting.robotclub.ab.ca/.
ROBOLAB (NXT, RCX)
ROBOLAB is a visual programming language built in LabVIEW that was developed by the Tufts CEEO. ROBOLAB was the dominant programming language for educational LEGO robotics prior to the release of the NXT Software. Browse all ROBOLAB posts on this site.
There are other languages out there. Try this Wikipedia page for longer list.