{"id":10901,"date":"2018-11-29T09:25:00","date_gmt":"2018-11-28T22:25:00","guid":{"rendered":"http:\/\/legoeng.local?p=10901&preview_id=10901"},"modified":"2019-04-02T15:15:25","modified_gmt":"2019-04-02T04:15:25","slug":"alternative-programming-languages","status":"publish","type":"post","link":"http:\/\/legoeng.local\/alternative-programming-languages\/","title":{"rendered":"Alternative Programming Languages for LEGO MINDSTORMS"},"content":{"rendered":"
\"\"<\/a>
MakeCode (EV3)<\/figcaption><\/figure>\n

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.<\/p>\n

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.<\/p>\n

 <\/p>\n

MakeCode<\/strong> (EV3)
\nMicrosoft
MakeCode<\/a> is an online programming platform that can control the EV3 and other devices, such as Cue and the BBC micro:bit. Being able to use MakeCode on various devices might make it an attractive\u00a0option. MakeCode uses blocks (like Scratch) or JavaScript (text) programming.<\/p>\n

Swift Playgrounds<\/strong> (EV3)
\n
Swift Playgrounds<\/a> is an iPad-only environment designed to help users learn to program using the Swift programming language. In Swift Playground, users can program robots, gather information through sensors, and cause actions via the motos. There is also an EV3 Animal Rescue Book<\/a> that teachers might find they can use with their students.<\/p>\n

EV3Python<\/strong> (EV3)
\n
EV3Python<\/a> helps users familiar with Python programming to use this language to control an EV3 robot. This is done with the assistance of the Microsoft Visual Studio Code.<\/p>\n

RobotC<\/strong> (EV3, NXT, RCX)
\nRobotC 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\/<\/a>.<\/p>\n

Scratch<\/strong> (EV3, NXT)
\nScratch is a very popular visually programming environment. Several extensions have been created to support the NXT and EV3. For more information about Scratch, see:
https:\/\/scratch.mit.edu\/<\/a>\u00a0 Scratch 3.0 is in development and should be available in 2019 with continued support for EV3. Scratch can also be used with LEGO WeDo (see\u00a0Scratch-ing the LEGO WeDo<\/a>) and WeDo 2.0. For more about using Scratch with WeDo, see:\u00a0https:\/\/scratch.mit.edu\/wedo<\/a>.<\/p>\n

EV3dev<\/strong> (EV3)
\nEV3dev isn’t actually a programming language, but rather a
Debian Linux<\/a>-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\/<\/a>.<\/p>\n

leJOS <\/strong>(EV3, NXT, RCX)
\nLeJOS (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<\/a>.<\/p>\n

OpenRoberta<\/strong> (EV3, NXT)
\nOpen 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<\/a>.<\/p>\n

EV3 Basic<\/strong> (EV3)
\nEV3 Basic is a textual programming language. For more information, see:
Introducing EV3 Basic<\/a>.<\/p>\n

Enchanting<\/strong> (NXT)
\nEnchanting is a programming environment for the NXT that is built on Scratch. For more information, see:
http:\/\/enchanting.robotclub.ab.ca\/<\/a>.<\/p>\n

CoderZ<\/strong> (EV3)
\n
CoderZ<\/a> is a 3D simulated robot environment using virtual robots that are similar to the EV3 robot. Programming can be done with either Blockly or Java programming languages. The benefit is that students can create code at home, extending their learning at school. CoderZ is a commercial product and offers a 14-day free trial.<\/p>\n

LabVIEW<\/strong> (EV3, NXT)
\nLabVIEW 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<\/a> posts on this site.<\/p>\n

ROBOLAB<\/strong> (NXT, RCX)
\nROBOLAB 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. It is dated and to use it, older computers and operating systems are necessary. Browse all
ROBOLAB<\/a> posts on this site.<\/p>\n

 <\/p>\n

There are other languages out there. Try this Wikipedia<\/a> page for a longer list.<\/p>\n","protected":false},"excerpt":{"rendered":"

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 […]<\/p>\n","protected":false},"author":17,"featured_media":13483,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[250],"tags":[69],"_links":{"self":[{"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/posts\/10901"}],"collection":[{"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/comments?post=10901"}],"version-history":[{"count":0,"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/posts\/10901\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/media\/13483"}],"wp:attachment":[{"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/media?parent=10901"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/categories?post=10901"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/legoeng.local\/wp-json\/wp\/v2\/tags?post=10901"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}