P1.0 (Printing) - 13 March 2012

First printing.

B6.0 - 01 February 2012

The book has been through indexing and copy edit. Now it’s on to layout and then the printer.

B5.0 - 10 December 2011

  • Slight re-tooling of some chapter and section headings
  • Acknowledgments section added
  • Modified Gemfile in code directory to include the specific versions of the tools used when writing the code for the book.
  • References to online book resources.
  • Slight update to running Ruby apps on Windows.
  • Including Bibliography
  • Wording and other minor changes as recommended by technical reviewers.
  • Fixes errata reported by handsome readers.

B4.0 - 01 December 2011

  • Added Appendix 1, Common Command-Line Gems and Libraries which includes brief overviews of some other popular CLI tools (like thor and main), as well as a list of links to a lot of other CLI-related libraries.
  • Removed an unfair comparison to Perl in the intro.
  • Renamed todo.rb to todo, as it really shouldn’t have had the .rb extension in the first place. Implemented formatters in later sections as objects that are created rather than holders of class methods.
  • Reworked how we extracted code for unit tests to use Ruby’s OO features more correctly.
  • Used a more idiomatic YAML call to parse YAML files.
  • Replaced the term “builder” with the term “factory method,” in Chapter 9, Be Easy To Maintain, which is really what that pattern is.
  • Replaced magic powers-of-two with binary literals to make code more clear.
  • Replaced short-form globals with the English equivalents, e.g. instead of $:, using $LOAD_PATH.
  • Added notes about what does and doesn’t work on Windows.
  • Added sidebar on ARGF.
  • Added sidebar on OptionParser type conversions.
  • Added sidebar on use of $stdout and $stderr.
  • Added section to Chapter 4, Play Well with Others that discusses trapping signals.

B3.0 - 17 November 2011

  • We’ve added Chapter 1, “Have a Clear and Concise Purpose,” which introduces our two running examples and kicks off our book with a list of the ten most basic rules of command-line app development.
  • We’ve also added our final chapter, Chapter 10, “Add Color, Formatting, and Interactivity,” which talks about using ANSI colors in your apps, special formatting for your output, interactive user input, and when to use these features.
  • We’ve corrected more typos reported to us by readers.

B2.0 - 08 November 2011

  • We’ve added Chapter 9, “Be Easy to Maintain,” which provides guidelines for writing applications that are easy to revise and extend. In the first part of the chapter, we discuss how to organize your code in multiple files, and in the second we offer techniques for organizing the code within those files.
  • We’ve added a section to the intro entitled, “Who this Book is For,” to more clearly define the audience for whom this book is written.
  • We’ve added an acknowledgement that the author of this book and the author of GLI are one in the same.
  • We’ve fixed a faulty link to OptionParser.
  • We’ve corrected the typos reported to us by readers.

B1.0 - 25 October 2011

First Beta.