STDIN
нужен для явного указания Руби откуда читать данные.
Это актуально когда программа одновременно работает с аргументами из командной строки и из консоли во время выполнения.
По–хорошему нужно его всегда писать, но в простом случае Руби догадывается, что он имелся в виду.