All episodes published in 2013
Category: Season 2
Episode #078: Tail Part 7: Cooperating Objects
In a final refactoring to our pseudo-tail(1), we use an enumerator to encapsulate the process of searching text chunks for newlines.
Episode #077: Tail Part 6: Process As Object
Continuing to refactor our minimal tail(1) implementation, today we clean up a loop by encapsulating its state in a new object.
Episode #076: Tail Part 5: Idiom
So far, our reimplementation of tail(1) bears a striking resemblance to the style of code we might find in the C implementation of the same utility. In this episode we'll …
Episode #074: Tail Part 3: #rindex
We've figured out how to read chunks of text backwards from a file, now it's time to tackle searching that text for the beginnings of lines.
Episode #075: Tail Part 4: copy
Marching right along in our reimplementation of UNIX tail(1), today we tackle the problem of dumping the tail of the file to STDOUT once we've found the starting point.
Episode #073: Tail Part 2: Do While
As we continue to rewrite a subset of the UNIX tail(1) command, we learn how to write a do...while loop in Ruby.
Episode #072: Tail Part 1: Random Access
This episode kicks off a short miniseries on re-implementing a small subset of the UNIX "tail" command in Ruby. We'll start by learning how to jump around to arbitrary positions …
Episode #071: Break With Value
In the second of two episodes about the 'break' keyword, we discover how to override method return values to suit our own needs.
Episode #070: Break
In this, the first of two episodes on the 'break' keyword, we look at how it can be applied beyond breaking out of loops.