Our software release cycle

Posted by John M. Robinson MD, PhD on February 26, 2024
Software developer


We are often asked, "how often do you release software?" I suspect that person asking the question really wants to know whether we are actively improving our software. The answer to the second question is a resounding yes. Our largest expense, by far, is software development.

Here, I will to answer the original question, "how often do you release software?" The answer is, "as often as the customer wants." Thanks to an engineering tool called the feature toggle (or feature flag), we can ship code continuously but activate/enable a feature only when a client is ready. As you may well imagine, some clients are early adopters---they want to be on the cutting edge of technology---and other clients are late adopters---they are skeptical of change. Most communities fall somewhere in the middle. Feature toggles allow us to provide a customer-tuned release strategy. 

A customer's overall appetite for new features may not translate into their interest in adopting a particular feature. A customer that has been asking for a particular feature will likely want to adopt the feature as soon as it is available. Feature toggles allow for a customer-tuned as well as a feature-tuned release strategy. 

Our feature-tuned release strategy is illustrated by resident bulletin board, a feature that became available about 3 months ago. The availability of the feature prompted some soul searching by our clients. "Will some residents misuse the bulletin board?" "What if a resident publishes inappropriate content?" "Would residents publish politically divisive content?" Many clients had to think through these concerns. Some wanted to revisit their internal policies before making this feature available to their residents.

The ability for staff to remove bulletin board posts reassured many clients. About 25% of our clients went live with the bulletin board as soon as it was available. Now, about 70% are live. The remaining 30% may never enable the feature.

Of the 70% that have enabled the bulletin board, I think all will tell you that their concerns about potential misuse of the bulletin board were overblown. I am confident that all of our clients appreciate having the ability to adopt new features at their own pace.