In our quest to coordinate asynchronous tasks, we've attempted a polling approach. Unfortunately, this strategy has some significant efficiency drawbacks. This time, we'll apply a technique known as "multiplexing", to …
How can we make sure asynchronous work is done efficiently? In ep #2 of a series, we'll build one of the simplest possible solutions: a polling model.
Ruby's backtick operator is great for quick-and-dirty output capture, but what do you use when you need more power?
Learn a robust, cross-platform way to throw away unwanted output in Ruby programs.
Learn about Ruby's Perl-style I/O special variables, and why they exist.
Ruby's open() call has more tricks up its sleeves than you know!
Shortcuts to reading and writing files in Ruby.
A little history lesson about computer text formats
Today we look at redirecting subprocess I/O, and discover that it's surprisingly easy!
Today we learn about how the StringIO class can help us test methods that work with files.