1 Publish early, publish often

Hello dear reader, and thank you for supporting me by buying this book!

In the open source world they say “release early, release often”. Software, like many art forms, is never fully “finished”. There just comes a point when you stop working on it and decide to show it to the world. The hard part however is not to get stuck while trying to get things “just right”.

The alternative is showing people what you have created so far, and in the meantime continue to improve it. That is the approach I’m taking with this book. This might mean that when you first look at it, there’s not a lot there yet. Please be patient! There’s more coming.

The price will also gradually go up as this book nears “finished”, but you will get all the updates without paying a penny extra. Sometimes being an early adopter is costly, but this time it will actually pay off.

What is more important however is that this way you get the opportunity to aid in the writing of this book. I am going to need your feedback if I want to reach my goal of making this the definitive guide to functional programming in Ruby!

Is something unclear because I didn’t explain it well? Does the book go too fast, or too slow? Does code not work as advertised, are there topics missing you would like to see covered, or do I go on tangents that would be better cut out? Be my most brutal editor and let me know!

If you come across terms you weren’t familiar with, let me know as well, so I can add them to the glossary at the back.

You can reach me per email (arne@arnebrasseur.net) or on Twitter (@plexus). Or if you’d like to send me a letter or postcard, just ask me for my address on one of these channels.

If it turns out that things really don’t work out between this book and you, then I’m sorry to hear that, but know that Leanpub has a 45 days 100% money back guarantee. No questions asked!

Without further ado, please enjoy “The Happy Lambda”!

Arne Brasseur, Berlin, 11 October 2013

1.1 Changelog

  • 2013-10-10 : Released first version
  • 2013-10-11 : Added “publish early, publish often” preamble
  • 2013-10-13 : Expanded introduction
  • 2013-10-17 : Added an “Evocation” section to set the tone
  • 2013-10-28 : Added “Lazy and Strict Evaluation”, and “Methods vs Functions”
  • 2013-10-29 : Cleaned up, clarified and expanded the introduction
  • 2013-11-01 : Moved “functional programming” to its own chapter. Significantly rewritten and expanded chapter 1 and 2
  • 2013-12-02 : Incorporate feedback from Christophe (@_toch)
  • 2013-12-23 : Add an aside with an overview on how to create procs/lambdas
  • 2013-12-24 : Add a “moving parts” section
  • 2014-01-15 : Add newlines in the LaTeX sections, thanks Shih-gian Lee for spotting this!
  • 2014-01-26 : Started the “Making Ruby more functional” chapter