Today is a very big day for NCrunch, with two major announcements I'm happy to make.
First of all, I'm happy to announce that NCrunch Version 2 has cleared its beta testing and is now considered to be the latest stable release of the product. This is marked by the release of v2.4, a build which now has the licensing features enabled, the expiry dates removed, and several fixes for recently reported issues in the v2.3 build.
If you haven't seen what V2 has to offer, I really recommend having a run through this detailed blog post published back in November.
The existing beta builds of V2 (v2.0, v2.1, v2.2, v2.3) will expire on the 6th of February. There's no panic though, as v2.4 comes packaged with a new evaluation license that will give you another 30 days to try it out if you don't have a license that will work with it yet.
.. which brings me to the second big announcement of today ...
The free V2 upgrade period for V1 licenses has been extended from 6 months to 12 months
This means that if you bought a license for NCrunch after the 31st of January 2013, then at minimum, you'll qualify for a free upgrade to NCrunch v2.4.
The caveat here is that from V2, the licensing upgrade constraint will also apply to minor versions of the product. This means that from V2, you'll only be able to upgrade to a minor version of NCrunch if it's been released within 12 months of the date of your license purchase. This is different from the V1 licensing, where all the minor updates were free, but there was no published policy that detailed how many minor updates there would be for a major version, or when they would be made available.
So why are these changes being made?
Well, there are many reasons.
First and foremost, many people explained to me that they found the original V1 licensing difficult to budget for because of the short 6 month upgrade period. The original idea behind the 6 month period was to be able to sell each major version as a separate product (with a reduced upgrade price), then offer people a 6 month upgrade period under the logic that it sucks to buy something just before missing out on something better that is shortly after made available. To have made the period 12 months would have meant that V2 would have been effectively free to all users, which wasn't something I felt confident on financing at the time of the V1 release. But the 6 month constraint introduced complications for many users working with corporate budgets designed for annual subscriptions of other software products. It also wasn't very popular because 6 months doesn't seem to be the industry standard for this type of product.
Secondly, this created a 'lottery-like' scenario where people would have no certainty on how long they would continue to receive upgrades for NCrunch. As there was no absolutely certainty on the V2 release date, I had a flood of people asking for specifics during the second and third quarters of 2013. No one (including me) knew exactly when V2 would be released. If they bought 5 months before the release, they'd win big. If they bought 7 months before the release, they'd lose out. In hindsight this made the licensing very unfair and took all the certainty out of the process.
Third, the scheme introduced complications for future maintenance of the product. I couldn't in good conscious let someone buy a product that would be left without maintenance just a few months after purchase, which meant that V1 would need to be maintained in parallel with V2. This means merging every fix backwards, maintaining a whole new release cycle, and continuing to analyse and find solutions in V1 for issues that were already resolved to a much higher standard in V2. This would create a huge waste of resources that would be better spent improving V2 and adding features that everyone could make use of.
Fourth, the scheme created a situation that encouraged features to be introduced only in major versions, leaving the minor versions for fixes only. This seemed irrational for low-risk high-value features that could be easily rolled into minor versions allowing users to make use of them earlier.
Finally, after more than a year of selling NCrunch licenses, it continues to become clearer to me just how expensive it is to maintain a product that is so heavily integrated with other tools and frameworks. Every week there is a new VS update, or a new version of a testing framework, or some new build tool that requires special consideration by NCrunch. Without a reliable 12 month period where you can be certain the product is maintained, NCrunch would simply fall behind the massive churn that very much defines the software industry.
It should be noted NCrunch is not changing to a usage restricted subscription licensing system. The subscription is for product upgrades only. If your license works for a version of NCrunch, you can keep using that version for as long as you want.
I hope that people find this to be a favourable change and that it helps to lighten the burden of maintaining an NCrunch license. Of course, all upgrades are still at 50% of the price of a full license, and there are no changes planned to the price of licenses for V2 - they will be the same as they were in V1.
Anyway, go grab 2.4 and have a play with it. I'd love to know what you think of it!