I'm not an electronics guy, so I might not be able to explain precisely what I need. This is a question a friend keeps asking me.
What my friend is looking for is a programming language that would allow him to:
- Interface with hardware (via serial and USB ports).
- Write multithreaded code.
- Throw together UIs very quickly.
- Port his code to Linux and OS X as easily as possible (okay, this is what I want).
He is building a tool for a local group that teaches very basic robotics to college students. Right now he's using C++, but writing the UI code in C++ is not exactly a fun task. He is also using some Windows-specific libraries for (1), which means I can neither try out his code nor help him with fixing bugs (I use a Mac).
EDIT: Libraries for Python/Ruby are welcome.