is an introductory programming language targeted at kids, in which they can drag and drop code tiles to form their programs. I recently learned that Scratch will communicate to other programs over a network socket via a simple protocol, and wrote a program to stand between an extended variation of Scratch and the NXT to allow you to control the NXT from that simple environment. My write-up on the results is here
My goal is to go further than that
-- I'd really like to make it so that kids can code something up in a Scratch-like environment, control and debug the robot in real-time (possibly even using the standard NXT firmware), and export the code to something they can compile and run on the robot autonomously. I'd certainly be interested in any feedback on the idea!