Hi. I just read about ruby yesterday after obtaining a copy of April 2002 linux magazine, and I’m quite impressed at how much like c++ it is, but easier. However a project that I may do in ruby instead of c++ (a software 3d api) will be useless unless I can get keyboard input in a non-blocking way. One thing that I have been thinking was using multithreading (which looks amazingly easy in ruby) and use the .collect() function, but does this block? Also will it pick up keys like the up arrow?