Skip to main content
Ben Nadel at the New York ColdFusion User Group (Jan. 2010) with: Clark Valberg and Javier Julio
Ben Nadel at the New York ColdFusion User Group (Jan. 2010) with: Clark Valberg Javier Julio

Early Access: Feature Flags - From Concept To Cultural Revolution

By
Published in Comments (3)

Almost 3-months ago, I announced that I was writing a book on Feature Flags. This morning, I'm thrilled to announce that I have an early access version available for purchase. This is a PDF version; and, the formatting is a bit rough around the edges. But, the content is all there. And, if you pick-up the book now (at a deep discount), you'll automatically get access to future versions.

Get the book now, 50% off

You can read several of the early chapters on the site for free; and, a few paragraphs from each subsequent chapter as well. I've tried to pour everything that I've learned about Feature Flags over the last 7-years into this book. Feature flags are magical; and, I only hope that I can inspire other people to start using them.

Here's the list of chapters that I finally came up with (which is slightly different than the original conception):

  1. Caveat Emptor
  2. Of Outages And Incidents
  3. The Status Quo
  4. Feature Flags, An Introduction
  5. Key Terms and Concepts
  6. Going Deep on Feature Flag Targeting
  7. The User Experience (UX) of Feature Flag Targeting
  8. Types of Feature Flags
  9. Life-Cycle of a Feature Flag
  10. Use Cases
  11. Server-Side vs. Client-Side
  12. Bridging the Sophistication Gap
  13. Life Without Automated Testing
  14. Ownership Boundaries
  15. The Hidden Cost of Feature Flags
  16. Not Everything Can Be Feature Flagged
  17. Build vs. Buy
  18. Track Actions, Not Feature Flag State
  19. Logs, Metrics, and Feature Flags
  20. A Cultural Revolution
  21. People Like Us Do Things Like This
  22. Building Inclusive Products
  23. An Opinionated Guide to Pull Requests (PRs)
  24. Removing the Cost of Context Switching
  25. Measuring Team Productivity
  26. Increasing Agility With Dynamic Code
  27. Product Release vs. Marketing Release
  28. Getting From No to Yes
  29. What If I Can Only Deploy Every 2-Weeks?
  30. I Eat, I Sleep, I Feature Flag
  31. About The Author

The book is split into two conceptual halves: technical aspects and cultural impact. The first half goes into what feature flags are, how they work (mechanically), and how they change the way you think about organization your code / projects. The second half explores all the ways in which feature flags impact the EPD (Engineering, Product, and Design) culture.

The first half provides a great deal of value; and, if you only read the first half, it will be well worth your time. But, the full magic of feature flags is unlocked when you use feature flags to change the way you operate as a team. This extends beyond engineers, and impacts both cross-team communication and customer-facing communication.

I'm hoping to have the final version (ePub and Mobi) available in the next few weeks. I just need to figure out how pandoc works. And, I need to figure how to best position "figures" so I don't get large blank spots on pages.

All feedback about the book is welcome!

And, oh man, I cannot wait to get back to regular blogging! Writing a book was such a completely different type of activity. Rewarding; but, utterly draining. Thank you all for putting up with the very low volume of blogging these last 3-months. You are all wonderful!

Reader Comments

10 Comments

Got your book, Ben. I enjoyed what I'm seeing so far. I was surprised you opted for CFML examples.

It shouldn't be a big deal, but consider a note about arrays starting with 1 rather than 0 which might come up in an example or two causing the reader to be confused.

Also consider mentioning CFML is the language used for examples since some of my colleagues that I'd recommend this book to have never even seen CFML.

15,848 Comments

@Justin,

I'm glad you're enjoying the book so far. The example stuff is tough - at the end of the day, I needed to pick something; and, I feel like CFML has a low degree of "ceremony" in the code. And, the stuff it does have, like required numeric and <cfif> I think is preatty reasonable in terms of intuitiveness. But, of course, I am biased after many years of writing it.

One thing I could try to do is actually remove even more of the ceremony and just call it "pseudo code". But, I also need to have something that I can run on my end to make sure what I have isn't entirely wrong 😆

As I'm finalizing the book, I'll try to find ways to make the code more simple. And, you're right - probably a good idea to at least have a note about the language choice (and the arrays 😉).

Post A Comment — I'd Love To Hear From You!

Post a Comment

I believe in love. I believe in compassion. I believe in human rights. I believe that we can afford to give more of these gifts to the world around us because it costs us nothing to be decent and kind and understanding. And, I want you to know that when you land on this site, you are accepted for who you are, no matter how you identify, what truths you live, or whatever kind of goofy shit makes you feel alive! Rock on with your bad self!
Ben Nadel