So I am going to use the Lego Mindstorms robots in my Python course. The kids need to write the same simple program in NXT-G, Microsoft VPL and Python for the Mindstorms robot. In order to start I had to reinstall the NXT-G firmware on the brick. I had LeJos (Java) on them. Should be easy. Plug the brick in to the computer, download firmware to brick from the Mindstorms software. Two days later (maybe 5 hours, never said I was smart, just stubborn) I figured out why it would not install. One word: Arduino. It seems the Arduino and the Mindstorms drivers do not play well together. If you have used an Arduino on your computer it takes over and will not let the brick see the correct driver. You have to delete the Arduino driver. The Arduino driver is named Basso. Basso does not want to delete. In fact it does not delete. You have to trick it in to stop working, then fire up the Lego driver quickly before Basso takes over again. Notice the “quickly”. I am not kidding. Delete Basso, start Lego, flash the brick before Basso starts again. Weird. There is supposedly a cleaner method that requires deleting an ini file. I could not find said ini file on my Windows 10 machine. So “quickly” it is.
This is another example of look before you leap. I plan to start with the Legos tomorrow. I managed to get my firmware issues solved today. Close.
I like doing these multiple language exercises because it takes the kids (and usually me) out of their comfort zone. They have never seen NXT-G or VPL. They have no idea how to get Python onto a Mindstorms brick. They have to learn the language fairly quickly to meet the due dates. Admittedly they do not learn a lot of the language but it is the paradigm shift I am after. They have to figure out how to install firmware (hopefully it will install). All of this requires reading. Making kids read is amazingly difficult. Kind of like making kids show their math steps on tests and homework. (See https://mathequality.wordpress.com/2016/01/23/showing-work-in-high-school-mathematics/ for an interesting conversation on this topic.) I like to make kids read. If they learn to read they can do anything. They could even become a programming teacher. I have to go read now on how to make the robot do what it is supposed to do in the three languages before the kids figure it out ahead of me. Smart kids can be a pain.