Skip to main content
David Herbert
Turning deep tech into stories developers actually want to read.
View all authors

Open-source C++ Semantic Versioning (SemVer) Library

· 3 min read
David Herbert
Turning deep tech into stories developers actually want to read.

Softwares and libraries often evolve to include new features, security patches, bug fixes, and refactorings. When software evolves, it may introduce breaking changes (BCs) in its API, breaking the previous contract or compatibility with its clients.

C++ semver announcement cover

Semantic Versioning (SemVer) is a specification for assigning version numbers to software to communicate the degree of change between software releases and updates. However, it turned out the world was missing a proper semantic version library for C++, so we implemented one.

Using Variation IDs in ConfigCat for A/B Testing

· 8 min read
David Herbert
Turning deep tech into stories developers actually want to read.

The ability to make good decisions is often the leading factor in the success of a business. Yet, it is becoming increasingly difficult for companies to decide on what ideas to develop and content to optimize for users with certainty that it will perform as predicted.

Variation IDs Cover Image

Feature flagging is a vital technique that enables businesses to perform controlled A/B test experiments to gauge and analyze the impact of their decisions. A/B testing can effectively improve a business's overall performance and boost conversion rates by comparing and contrasting multiple implementations based on their performance with real users.

Announcing and Showcasing ConfigCat's React SDK

· 7 min read
David Herbert
Turning deep tech into stories developers actually want to read.

Our customers are at the heart of everything we do at ConfigCat. We take pride in knowing customer satisfaction is our top priority because we know that many of our competitors do not place the same value on customer experience as we do.

You asked. We listened!

We're excited to announce that ConfigCat now has an official React SDK.🥳🎉 The React SDK has been a highly requested feature by our customers, and we're proud to knock it off our checklist. The React SDK provides customers with a more modern, first-class React integration support when integrating ConfigCat with their React applications. We hope our customers share our enthusiasm for it.

How to Target Features by Tenants with Feature Flags

· 5 min read
David Herbert
Turning deep tech into stories developers actually want to read.

Feature Flagging is a powerful technique that gives businesses and organizations granular control over features by providing the ability to scope these features to a specific segment of users.

Feature flags are helpful for many reasons - one of which is they allow organizations and engineering teams in a multi-tenant software application to limit access to certain features by mapping them to the various tenants in the application or organization.

Feature Flag Lifespans - Short or Long?

· 7 min read
David Herbert
Turning deep tech into stories developers actually want to read.

Feature flags (aka. feature toggles) are becoming increasingly relevant in software development as they provide the ability to toggle features on or off in production, perform a gradual rollout of features and enable A/B testing experiments.

However, an often overlooked part of this feature flagging technique is that it introduces complexity and has inherent risks when said complexity isn't properly managed. As you're using more and more feature flags within your organization, it's important to understand that some of these flags are meant to last only for a short period and should, therefore, be removed from your codebase.

Feature Flags Life Circle

Eliminating Traditional Feature Release Anxieties

· 7 min read
David Herbert
Turning deep tech into stories developers actually want to read.

As developers, we spend countless hours building new features and having them pass through rigorous QA tests. However, despite experience and all preparations made, there's always that dreaded feeling you get in the pit of your stomach when you know it's time for deployment. What if something goes wrong in production and your feature doesn't function as expected?

Decoupling Feature Releases with Feature Flags

· 8 min read
David Herbert
Turning deep tech into stories developers actually want to read.

In a traditional software development workflow, whenever there are updates or feature releases to be made, they are typically tied to a single major deployment to production. As a result, the frequency of feature delivery is slower and a lot riskier because there’s a lot more at stake with each deployment if things don't go as planned.

That is to say that releases should not be tied to deployments but rather, decoupled from them. Due to this reason, in a continuous delivery environment, it is considered best practice to decouple feature releases from deployments as it allows for more incremental releases.

Hence, understanding the concept of decoupling releases from deployment and how feature flags can make that possible is a key for any team.

Primary and Secondary SDK Key Rotation Feature Intro

· 3 min read
David Herbert
Turning deep tech into stories developers actually want to read.

There's nothing more frustrating than writing up a thoughtful, intentional feature request to your favorite service provider and then not getting a response or subsequent feedback.

At ConfigCat, we understand the importance of feature requests because we know that our service becomes more successful when our customers are happy and their needs are met.

As a result, we keep track of each of our customers' feature requests to help us make informed product decisions and implement the features that matter most.

Feature Flag Rollbacks for Product Managers

· 7 min read
David Herbert
Turning deep tech into stories developers actually want to read.

Product managers are responsible for deciding what products to develop that align with the company's goals and also satisfy the needs of the customers. To be a successful product manager, you have to start by defining what a winning product looks like and iterate over it until it's right. To do so, you have to understand that at its core, a product is broken down into its features and quality of user experience.

However, when developing these features, even after thoroughly testing them in your development environment for potential bugs and issues that may negatively impact user experience, it may not always be sufficient to ensure a successful release to users.