So Chris Anderson the Editor-in-chief of Wired magazine did the final keynote presentation at NIWeek 2007 this past August. I was really excited about this since up to the run up to NIWeek I had managed to purchase and read his book, The Long Tail. I was also eager to get him to sign it, which I managed to do.
Chris did an amazing job in the keynote of describing his involvement with the LEGO Mindstorms NXT robotics system and how he created a UAV which was controlled by the NXT. This is marketing gold for LEGO and an inspiration to all, young and old as to what can be accomplished with a few low cost LEGO parts and a cell phone. He mentioned how his 9 year old son programmed the NXT using the NXT-G graphical programming language (which we all know is really LabVIEW in disguise).
I left that keynote feeling happy and all geeked out because, hey, when it really comes down to it, the Editor-in-chief of Wired magazine is using LabVIEW! How cool is that?
Well, not so cool it turns out. Chris just posted on his geekdad blog that Robot C is “The Best Programming Language for Lego Mindstorms” I mean, c'mon Chris, really? Can you seriously tell us that a 9 year old kid will jump for joy when you show her a screen full of this? Give me a break. I'm beginning to wonder if you've turned from a geek dad to simply a geek. We shouldn't lose sight of the fact that this intended for kids. No, really it is. The biggest challenge we have as parents is to find ways to pull our children away from various mind numbing distractions onto something useful. Showing them pages of C code is not one of them.
In this video my 8 year old son built and programmed the NXT claw on his own. I mentioned to him that he was programming in LabVIEW and he was surprised. He was surprise because he thought LabVIEW was this complicated software that only dad knew how to use and was for automating complicated machinery he knew nothing of. This is the whole point. He was able to build the mechanics and write the automation program without writing one line of code.
The future is not C or text based programming languages. The future is graphical programming. Chris mentions several times that it's time to use a “real programming language”. I agree. This is why we should all be programming the NXT using LabVIEW. See, LabVIEW is a real programming language and contains all the things that Chris misses in NXT-G. LabVIEW has “if…then…else”, “while”, even “for…next”. It also has sophisticated debugging tools. Can it rise up to the challenge? Well, if Virginia Tech uses it for DARwIn and the DARPA challenge then I'm sure it will work on the poor little NXT brain. Oh, and if the cost is too high, there's always LabVIEW Student Edition.