Nicolas Hurion

Building tools to help people.

Build Awesome Command-Line Applications in Ruby: Control Your Computer, Simplify Your Life

Ruby is a language I wanted to learn for quite some time now. So I bought a few books to help me in the process, and Build Awesome Command-Line Applications in Ruby is the first I finished.

The book uses two applications to help you learn how to build “Awesome Command-line applications”. One application to handle backup of a database, and another more complex “command suite” application to manage a todo list.

It is well written, quick and easy to read.

It will teach you all the basic tools to live in the Ruby ecosystem:

  • How to build your application with rake and bundler.
  • How to use gem to package and distribute your application through RubyGems.
  • How to organize your code.
  • How to test your application, both at the functional level with Cucumber and Aruba, and Unit test for lower level fine grained tests.

Which is exactly what I was looking for.

And not only that, but it will also teach you how to make a really good, effective, user friendly command-line application. Regarding that point, the title of the book is not an exaggeration. It doesn’t teach you how to make simple ruby script to help you in your day to day job, it teaches you how to make something really great for the user. Including integrated help, man page, configuration file management and so on.

If you’re like me new to the Ruby world, this book will only help you a little about syntax and basic libraries, but it will give you a good basis to build, document and release your first application. Which is really nice as once you have that, you’ve got something to push you to learn more about the rest of the language and available libraries.