Lego EV3‎ > ‎

Basic and Python

The Lego EV3 system is a fantastic way to learn about robots but it has, in my opinion, a major weakness: it won't teach you how to do normal, text-based programming like professionals use (it has an icon-based programming interface, like Scratch). The ideal would be to be able to program the EV3 with a powerful but easy-to-learn text-based programming language, and of course, we want it to be free! The two best free options for programming the EV3 with a textual programming language are, in my opinion, EV3 Basic and EV3 Python.

EV3 Basic

I'm excited at the ease with which it's possible to program the Lego EV3 robot with EV3 Basic, i.e. Microsoft Small Basic with the EV3 extensionMicrosoft Small Basic was released by Microsoft in 2008 to put the fun back into programming for young people. Before you try to program the EV3 with EV3 Basic you should learn the fundamentals of Microsoft Small Basic. Small Basic and therefore also EV3 Basic runs only on Windows computers. I've set up a site dedicated to EV3 Basic, which I invite you to visit:

EV3 Python
The Python programming language is one of the most modern, most popular, most easy-to-learn and most powerful programming languages in the world, so what could be more natural for an owner of the EV3 robot than to want to learn how to program the EV3 robot using the Python programming language? The normal way to that would be to run the EV3dev operating system in the EV3 and run EV3 Python within the EV3dev environment.

I've made a website,, to help Python beginners to get started with ev3dev and EV3 Python. My website should be a useful complement to the official EV3dev website at Unlike the ev3dev website, which is mostly made for experts by experts, my website is aimed at beginners, especially Windows users like myself who have only a standard EV3 kit (home or educational) and who do not own any third-party hardware. So why not check out my new site at

Note that my website, like is intended only to teach you about the extra features of EV3 Python that are not available in standard Python. Before you start learning about the peculiarities of EV3 Python you should become familiar with standard Python, perhaps by following one of the hundreds of online courses in standard Python - some are listed HERE.

You should also learn the basics of the Linux operating system since you will need to work with that to a small extent as you use EV3 Python. Some advice on getting started with Linux is given HERE. is not endorsed by Lego corporation.